Raspbian Package Auto-Building

Build log for groonga (6.1.5-1) on armhf

groonga6.1.5-1armhf → 2017-02-03 22:16:23

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

+==============================================================================+
| groonga 6.1.5-1 (armhf)                      Fri, 03 Feb 2017 21:32:42 +0000 |
+==============================================================================+

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

I: NOTICE: Log filtering will replace 'var/lib/schroot/mount/stretch-staging-armhf-sbuild-84df026f-38a0-458f-88d0-81bf7b932ea5' with '<<CHROOT>>'

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

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

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


Check APT
---------

Checking available source versions...

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

Reading package lists...
Need to get 14.3 MB of source archives.
Get:1 http://172.17.0.1/private stretch-staging/main groonga 6.1.5-1 (dsc) [2752 B]
Get:2 http://172.17.0.1/private stretch-staging/main groonga 6.1.5-1 (tar) [14.2 MB]
Get:3 http://172.17.0.1/private stretch-staging/main groonga 6.1.5-1 (diff) [95.3 kB]
Fetched 14.3 MB in 1s (7803 kB/s)
Download complete and in download only mode
I: NOTICE: Log filtering will replace 'build/groonga-kHgLvQ/groonga-6.1.5' with '<<PKGBUILDDIR>>'
I: NOTICE: Log filtering will replace 'build/groonga-kHgLvQ' 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-3pvuT0/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-3pvuT0/gpg/pubring.kbx' created
gpg: /<<BUILDDIR>>/resolver-3pvuT0/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-3pvuT0/apt_archive ./ InRelease
Get:2 copy:/<<BUILDDIR>>/resolver-3pvuT0/apt_archive ./ Release [957 B]
Get:3 copy:/<<BUILDDIR>>/resolver-3pvuT0/apt_archive ./ Release.gpg [370 B]
Get:4 copy:/<<BUILDDIR>>/resolver-3pvuT0/apt_archive ./ Sources [349 B]
Get:5 copy:/<<BUILDDIR>>/resolver-3pvuT0/apt_archive ./ Packages [434 B]
Fetched 2110 B in 0s (3573 B/s)
Reading package lists...
W: No sandbox user '_apt' on the system, can not drop privileges
Reading package lists...

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

Installing build dependencies
Reading package lists...
Building dependency tree...
Reading state information...
The following packages were automatically installed and are no longer required:
  fuse2fs gnupg-l10n kbd libfuse2 manpages netbase psmisc
Use 'apt autoremove' to remove them.
The following NEW packages will be installed:
  sbuild-build-depends-core-dummy
0 upgraded, 1 newly installed, 0 to remove and 93 not upgraded.
Need to get 776 B of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 copy:/<<BUILDDIR>>/resolver-3pvuT0/apt_archive ./ sbuild-build-depends-core-dummy 0.invalid.0 [776 B]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 776 B in 0s (0 B/s)
Selecting previously unselected package sbuild-build-depends-core-dummy.
(Reading database ... 13244 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-3pvuT0/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-3pvuT0/apt_archive ./ InRelease
Get:2 copy:/<<BUILDDIR>>/resolver-3pvuT0/apt_archive ./ Release [963 B]
Get:3 copy:/<<BUILDDIR>>/resolver-3pvuT0/apt_archive ./ Release.gpg [370 B]
Get:4 copy:/<<BUILDDIR>>/resolver-3pvuT0/apt_archive ./ Sources [568 B]
Get:5 copy:/<<BUILDDIR>>/resolver-3pvuT0/apt_archive ./ Packages [645 B]
Fetched 2546 B in 0s (3960 B/s)
Reading package lists...
W: No sandbox user '_apt' on the system, can not drop privileges
Reading package lists...

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

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

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

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

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


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

gpgv: unknown type of key resource 'trustedkeys.kbx'
gpgv: keyblock resource '/sbuild-nonexistent/.gnupg/trustedkeys.kbx': General error
gpgv: Signature made Mon Jan 23 16:20:43 2017 UTC
gpgv:                using RSA key F34F09744E9F5DD9
gpgv: Can't check signature: No public key
dpkg-source: warning: failed to verify signature on ./groonga_6.1.5-1.dsc
dpkg-source: info: extracting groonga in /<<PKGBUILDDIR>>
dpkg-source: info: unpacking groonga_6.1.5.orig.tar.gz
dpkg-source: info: unpacking groonga_6.1.5-1.debian.tar.xz
dpkg-source: info: applying fix-nginx-FTBFS-on-kfreebsd.patch

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

Sufficient free space for build

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

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

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

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

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

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

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

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

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

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

Tools:
  Sphinx:                
  lemon:                 none
  Ruby:                  
  Cutter:                

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

Now type 'make' to build groonga 6.1.5!
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   dh_auto_build -a
	make -j4
make[1]: Entering directory '/<<PKGBUILDDIR>>'
make  all-recursive
make[2]: Entering directory '/<<PKGBUILDDIR>>'
Making all in build
make[3]: Entering directory '/<<PKGBUILDDIR>>/build'
Making all in cmake_modules
make[4]: Entering directory '/<<PKGBUILDDIR>>/build/cmake_modules'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/build/cmake_modules'
make[4]: Entering directory '/<<PKGBUILDDIR>>/build'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/build'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/build'
Making all in include
make[3]: Entering directory '/<<PKGBUILDDIR>>/include'
Making all in groonga
make[4]: Entering directory '/<<PKGBUILDDIR>>/include/groonga'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/include/groonga'
make[4]: Entering directory '/<<PKGBUILDDIR>>/include'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/include'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/include'
Making all in vendor
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor'
Making all in lz4
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/lz4'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/lz4'
Making all in onigmo
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo'
cd ../onigmo-source && make all
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
make  all-recursive
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
Making all in .
make[7]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regerror.lo -MD -MP -MF .deps/regerror.Tpo -c -o regerror.lo regerror.c
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regparse.lo -MD -MP -MF .deps/regparse.Tpo -c -o regparse.lo regparse.c
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regext.lo -MD -MP -MF .deps/regext.Tpo -c -o regext.lo regext.c
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regcomp.lo -MD -MP -MF .deps/regcomp.Tpo -c -o regcomp.lo regcomp.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT 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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regerror.lo -MD -MP -MF .deps/regerror.Tpo -c regerror.c  -fPIC -DPIC -o regerror.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regcomp.lo -MD -MP -MF .deps/regcomp.Tpo -c regcomp.c  -fPIC -DPIC -o regcomp.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regext.lo -MD -MP -MF .deps/regext.Tpo -c regext.c  -fPIC -DPIC -o regext.o
regparse.c: In function 'name_find':
regparse.c:546:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
     onig_st_lookup_strend(t, name, name_end, (HashDataType* )((void* )(&e)));
     ^~~~~~~~~~~~~~~~~~~~~
In file included from regparse.h:33:0,
                 from regparse.c:31:
regparse.c: In function 'add_code_range_to_buf0':
regint.h:692:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GET_CODE_POINT(code,p)   code = *((OnigCodePoint* )(p))
                                           ^
regparse.c:1689:5: note: in expansion of macro 'GET_CODE_POINT'
     GET_CODE_POINT(n, bbuf->p);
     ^~~~~~~~~~~~~~
regparse.c:1691:10: warning: cast increases required alignment of target type [-Wcast-align]
   data = (OnigCodePoint* )(bbuf->p);
          ^
regparse.c: In function 'not_code_range_buf':
regparse.c:1791:10: warning: cast increases required alignment of target type [-Wcast-align]
   data = (OnigCodePoint* )(bbuf->p);
          ^
regparse.c: In function 'or_code_range_buf':
regparse.c:1857:11: warning: cast increases required alignment of target type [-Wcast-align]
   data1 = (OnigCodePoint* )(bbuf1->p);
           ^
regparse.c: In function 'and_code_range_buf':
regparse.c:1940:11: warning: cast increases required alignment of target type [-Wcast-align]
   data1 = (OnigCodePoint* )(bbuf1->p);
           ^
regparse.c:1941:11: warning: cast increases required alignment of target type [-Wcast-align]
   data2 = (OnigCodePoint* )(bbuf2->p);
           ^
mv -f .deps/regext.Tpo .deps/regext.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regexec.lo -MD -MP -MF .deps/regexec.Tpo -c -o regexec.lo regexec.c
In file included from regparse.h:33:0,
                 from regcomp.c:31:
regcomp.c: In function 'onig_is_in_code_range':
regint.h:692:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GET_CODE_POINT(code,p)   code = *((OnigCodePoint* )(p))
                                           ^
regcomp.c:6039:3: note: in expansion of macro 'GET_CODE_POINT'
   GET_CODE_POINT(n, p);
   ^~~~~~~~~~~~~~
regcomp.c:6040:10: warning: cast increases required alignment of target type [-Wcast-align]
   data = (OnigCodePoint* )p;
          ^
mv -f .deps/regerror.Tpo .deps/regerror.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT reggnu.lo -MD -MP -MF .deps/reggnu.Tpo -c -o reggnu.lo reggnu.c
In file included from regparse.h:33:0,
                 from regparse.c:31:
regparse.c: In function 'is_onechar_cclass':
regint.h:692:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GET_CODE_POINT(code,p)   code = *((OnigCodePoint* )(p))
                                           ^
regparse.c:6467:5: note: in expansion of macro 'GET_CODE_POINT'
     GET_CODE_POINT(n, bbuf->p);
     ^~~~~~~~~~~~~~
regparse.c:6468:12: warning: cast increases required alignment of target type [-Wcast-align]
     data = (OnigCodePoint* )(bbuf->p) + 1;
            ^
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regexec.lo -MD -MP -MF .deps/regexec.Tpo -c regexec.c  -fPIC -DPIC -o regexec.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT reggnu.lo -MD -MP -MF .deps/reggnu.Tpo -c reggnu.c  -fPIC -DPIC -o reggnu.o
regexec.c: In function 'match_at':
regexec.c:502:18: warning: cast increases required alignment of target type [-Wcast-align]
     stk_alloc  = (OnigStackType* )(alloc_addr + sizeof(OnigStackIndex) * (ptr_num));\
                  ^
regexec.c:1616:3: note: in expansion of macro 'STACK_INIT'
   STACK_INIT(alloca_base, xmalloc_base, n, INIT_MATCH_STACK_SIZE);
   ^~~~~~~~~~
regexec.c:1619:16: warning: cast increases required alignment of target type [-Wcast-align]
   repeat_stk = (OnigStackIndex* )alloca_base;
                ^
mv -f .deps/reggnu.Tpo .deps/reggnu.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regenc.lo -MD -MP -MF .deps/regenc.Tpo -c -o regenc.lo regenc.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regenc.lo -MD -MP -MF .deps/regenc.Tpo -c regenc.c  -fPIC -DPIC -o regenc.o
mv -f .deps/regenc.Tpo .deps/regenc.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regsyntax.lo -MD -MP -MF .deps/regsyntax.Tpo -c -o regsyntax.lo regsyntax.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regsyntax.lo -MD -MP -MF .deps/regsyntax.Tpo -c regsyntax.c  -fPIC -DPIC -o regsyntax.o
mv -f .deps/regsyntax.Tpo .deps/regsyntax.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regtrav.lo -MD -MP -MF .deps/regtrav.Tpo -c -o regtrav.lo regtrav.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regtrav.lo -MD -MP -MF .deps/regtrav.Tpo -c regtrav.c  -fPIC -DPIC -o regtrav.o
mv -f .deps/regtrav.Tpo .deps/regtrav.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regversion.lo -MD -MP -MF .deps/regversion.Tpo -c -o regversion.lo regversion.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regversion.lo -MD -MP -MF .deps/regversion.Tpo -c regversion.c  -fPIC -DPIC -o regversion.o
mv -f .deps/regversion.Tpo .deps/regversion.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT st.lo -MD -MP -MF .deps/st.Tpo -c -o st.lo st.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT st.lo -MD -MP -MF .deps/st.Tpo -c st.c  -fPIC -DPIC -o st.o
mv -f .deps/st.Tpo .deps/st.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regposix.lo -MD -MP -MF .deps/regposix.Tpo -c -o regposix.lo regposix.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regposix.lo -MD -MP -MF .deps/regposix.Tpo -c regposix.c  -fPIC -DPIC -o regposix.o
regposix.c: In function 'regcomp':
regposix.c:154:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   r = onig_new(PONIG_C(reg), (UChar* )pattern, (UChar* )(pattern + len),
   ^
mv -f .deps/regposix.Tpo .deps/regposix.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regposerr.lo -MD -MP -MF .deps/regposerr.Tpo -c -o regposerr.lo regposerr.c
mv -f .deps/regcomp.Tpo .deps/regcomp.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT unicode.lo -MD -MP -MF .deps/unicode.Tpo -c -o unicode.lo `test -f './enc/unicode.c' || echo './'`./enc/unicode.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regposerr.lo -MD -MP -MF .deps/regposerr.Tpo -c regposerr.c  -fPIC -DPIC -o regposerr.o
mv -f .deps/regposerr.Tpo .deps/regposerr.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT ascii.lo -MD -MP -MF .deps/ascii.Tpo -c -o ascii.lo `test -f './enc/ascii.c' || echo './'`./enc/ascii.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT unicode.lo -MD -MP -MF .deps/unicode.Tpo -c ./enc/unicode.c  -fPIC -DPIC -o unicode.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT ascii.lo -MD -MP -MF .deps/ascii.Tpo -c ./enc/ascii.c  -fPIC -DPIC -o ascii.o
mv -f .deps/ascii.Tpo .deps/ascii.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT utf_8.lo -MD -MP -MF .deps/utf_8.Tpo -c -o utf_8.lo `test -f './enc/utf_8.c' || echo './'`./enc/utf_8.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT utf_8.lo -MD -MP -MF .deps/utf_8.Tpo -c ./enc/utf_8.c  -fPIC -DPIC -o utf_8.o
mv -f .deps/utf_8.Tpo .deps/utf_8.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT utf_16be.lo -MD -MP -MF .deps/utf_16be.Tpo -c -o utf_16be.lo `test -f './enc/utf_16be.c' || echo './'`./enc/utf_16be.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT utf_16be.lo -MD -MP -MF .deps/utf_16be.Tpo -c ./enc/utf_16be.c  -fPIC -DPIC -o utf_16be.o
mv -f .deps/utf_16be.Tpo .deps/utf_16be.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT utf_16le.lo -MD -MP -MF .deps/utf_16le.Tpo -c -o utf_16le.lo `test -f './enc/utf_16le.c' || echo './'`./enc/utf_16le.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT utf_16le.lo -MD -MP -MF .deps/utf_16le.Tpo -c ./enc/utf_16le.c  -fPIC -DPIC -o utf_16le.o
mv -f .deps/utf_16le.Tpo .deps/utf_16le.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT utf_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
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT utf_32be.lo -MD -MP -MF .deps/utf_32be.Tpo -c ./enc/utf_32be.c  -fPIC -DPIC -o utf_32be.o
mv -f .deps/utf_32be.Tpo .deps/utf_32be.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT 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
mv -f .deps/regparse.Tpo .deps/regparse.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT euc_jp.lo -MD -MP -MF .deps/euc_jp.Tpo -c -o euc_jp.lo `test -f './enc/euc_jp.c' || echo './'`./enc/euc_jp.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT utf_32le.lo -MD -MP -MF .deps/utf_32le.Tpo -c ./enc/utf_32le.c  -fPIC -DPIC -o utf_32le.o
mv -f .deps/unicode.Tpo .deps/unicode.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT shift_jis.lo -MD -MP -MF .deps/shift_jis.Tpo -c -o shift_jis.lo `test -f './enc/shift_jis.c' || echo './'`./enc/shift_jis.c
mv -f .deps/utf_32le.Tpo .deps/utf_32le.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT windows_31j.lo -MD -MP -MF .deps/windows_31j.Tpo -c -o windows_31j.lo `test -f './enc/windows_31j.c' || echo './'`./enc/windows_31j.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT euc_jp.lo -MD -MP -MF .deps/euc_jp.Tpo -c ./enc/euc_jp.c  -fPIC -DPIC -o euc_jp.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT shift_jis.lo -MD -MP -MF .deps/shift_jis.Tpo -c ./enc/shift_jis.c  -fPIC -DPIC -o shift_jis.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT windows_31j.lo -MD -MP -MF .deps/windows_31j.Tpo -c ./enc/windows_31j.c  -fPIC -DPIC -o windows_31j.o
mv -f .deps/euc_jp.Tpo .deps/euc_jp.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_1.lo -MD -MP -MF .deps/iso_8859_1.Tpo -c -o iso_8859_1.lo `test -f './enc/iso_8859_1.c' || echo './'`./enc/iso_8859_1.c
mv -f .deps/shift_jis.Tpo .deps/shift_jis.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_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/regexec.Tpo .deps/regexec.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_3.lo -MD -MP -MF .deps/iso_8859_3.Tpo -c -o iso_8859_3.lo `test -f './enc/iso_8859_3.c' || echo './'`./enc/iso_8859_3.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_1.lo -MD -MP -MF .deps/iso_8859_1.Tpo -c ./enc/iso_8859_1.c  -fPIC -DPIC -o iso_8859_1.o
mv -f .deps/windows_31j.Tpo .deps/windows_31j.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_4.lo -MD -MP -MF .deps/iso_8859_4.Tpo -c -o iso_8859_4.lo `test -f './enc/iso_8859_4.c' || echo './'`./enc/iso_8859_4.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_2.lo -MD -MP -MF .deps/iso_8859_2.Tpo -c ./enc/iso_8859_2.c  -fPIC -DPIC -o iso_8859_2.o
mv -f .deps/iso_8859_1.Tpo .deps/iso_8859_1.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_5.lo -MD -MP -MF .deps/iso_8859_5.Tpo -c -o iso_8859_5.lo `test -f './enc/iso_8859_5.c' || echo './'`./enc/iso_8859_5.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_3.lo -MD -MP -MF .deps/iso_8859_3.Tpo -c ./enc/iso_8859_3.c  -fPIC -DPIC -o iso_8859_3.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_4.lo -MD -MP -MF .deps/iso_8859_4.Tpo -c ./enc/iso_8859_4.c  -fPIC -DPIC -o iso_8859_4.o
mv -f .deps/iso_8859_2.Tpo .deps/iso_8859_2.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_6.lo -MD -MP -MF .deps/iso_8859_6.Tpo -c -o iso_8859_6.lo `test -f './enc/iso_8859_6.c' || echo './'`./enc/iso_8859_6.c
mv -f .deps/iso_8859_3.Tpo .deps/iso_8859_3.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_8.lo -MD -MP -MF .deps/iso_8859_8.Tpo -c -o iso_8859_8.lo `test -f './enc/iso_8859_8.c' || echo './'`./enc/iso_8859_8.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_5.lo -MD -MP -MF .deps/iso_8859_5.Tpo -c ./enc/iso_8859_5.c  -fPIC -DPIC -o iso_8859_5.o
mv -f .deps/iso_8859_5.Tpo .deps/iso_8859_5.Plo
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_6.lo -MD -MP -MF .deps/iso_8859_6.Tpo -c ./enc/iso_8859_6.c  -fPIC -DPIC -o iso_8859_6.o
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_10.lo -MD -MP -MF .deps/iso_8859_10.Tpo -c -o iso_8859_10.lo `test -f './enc/iso_8859_10.c' || echo './'`./enc/iso_8859_10.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_8.lo -MD -MP -MF .deps/iso_8859_8.Tpo -c ./enc/iso_8859_8.c  -fPIC -DPIC -o iso_8859_8.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_7.lo -MD -MP -MF .deps/iso_8859_7.Tpo -c ./enc/iso_8859_7.c  -fPIC -DPIC -o iso_8859_7.o
mv -f .deps/iso_8859_8.Tpo .deps/iso_8859_8.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_11.lo -MD -MP -MF .deps/iso_8859_11.Tpo -c -o iso_8859_11.lo `test -f './enc/iso_8859_11.c' || echo './'`./enc/iso_8859_11.c
mv -f .deps/iso_8859_7.Tpo .deps/iso_8859_7.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_13.lo -MD -MP -MF .deps/iso_8859_13.Tpo -c -o iso_8859_13.lo `test -f './enc/iso_8859_13.c' || echo './'`./enc/iso_8859_13.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_9.lo -MD -MP -MF .deps/iso_8859_9.Tpo -c ./enc/iso_8859_9.c  -fPIC -DPIC -o iso_8859_9.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_10.lo -MD -MP -MF .deps/iso_8859_10.Tpo -c ./enc/iso_8859_10.c  -fPIC -DPIC -o iso_8859_10.o
mv -f .deps/iso_8859_9.Tpo .deps/iso_8859_9.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_14.lo -MD -MP -MF .deps/iso_8859_14.Tpo -c -o iso_8859_14.lo `test -f './enc/iso_8859_14.c' || echo './'`./enc/iso_8859_14.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_15.lo -MD -MP -MF .deps/iso_8859_15.Tpo -c -o iso_8859_15.lo `test -f './enc/iso_8859_15.c' || echo './'`./enc/iso_8859_15.c
mv -f .deps/iso_8859_11.Tpo .deps/iso_8859_11.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso_8859_16.lo -MD -MP -MF .deps/iso_8859_16.Tpo -c -o iso_8859_16.lo `test -f './enc/iso_8859_16.c' || echo './'`./enc/iso_8859_16.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_13.lo -MD -MP -MF .deps/iso_8859_13.Tpo -c ./enc/iso_8859_13.c  -fPIC -DPIC -o iso_8859_13.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_15.lo -MD -MP -MF .deps/iso_8859_15.Tpo -c ./enc/iso_8859_15.c  -fPIC -DPIC -o iso_8859_15.o
mv -f .deps/iso_8859_13.Tpo .deps/iso_8859_13.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT euc_tw.lo -MD -MP -MF .deps/euc_tw.Tpo -c -o euc_tw.lo `test -f './enc/euc_tw.c' || echo './'`./enc/euc_tw.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso_8859_16.lo -MD -MP -MF .deps/iso_8859_16.Tpo -c ./enc/iso_8859_16.c  -fPIC -DPIC -o iso_8859_16.o
mv -f .deps/iso_8859_14.Tpo .deps/iso_8859_14.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT euc_kr.lo -MD -MP -MF .deps/euc_kr.Tpo -c -o euc_kr.lo `test -f './enc/euc_kr.c' || echo './'`./enc/euc_kr.c
mv -f .deps/iso_8859_15.Tpo .deps/iso_8859_15.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT big5.lo -MD -MP -MF .deps/big5.Tpo -c -o big5.lo `test -f './enc/big5.c' || echo './'`./enc/big5.c
mv -f .deps/iso_8859_16.Tpo .deps/iso_8859_16.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT gb18030.lo -MD -MP -MF .deps/gb18030.Tpo -c -o gb18030.lo `test -f './enc/gb18030.c' || echo './'`./enc/gb18030.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT euc_tw.lo -MD -MP -MF .deps/euc_tw.Tpo -c ./enc/euc_tw.c  -fPIC -DPIC -o euc_tw.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT euc_kr.lo -MD -MP -MF .deps/euc_kr.Tpo -c ./enc/euc_kr.c  -fPIC -DPIC -o euc_kr.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT big5.lo -MD -MP -MF .deps/big5.Tpo -c ./enc/big5.c  -fPIC -DPIC -o big5.o
mv -f .deps/euc_tw.Tpo .deps/euc_tw.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT koi8_r.lo -MD -MP -MF .deps/koi8_r.Tpo -c -o koi8_r.lo `test -f './enc/koi8_r.c' || echo './'`./enc/koi8_r.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT gb18030.lo -MD -MP -MF .deps/gb18030.Tpo -c ./enc/gb18030.c  -fPIC -DPIC -o gb18030.o
mv -f .deps/euc_kr.Tpo .deps/euc_kr.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT koi8_u.lo -MD -MP -MF .deps/koi8_u.Tpo -c -o koi8_u.lo `test -f './enc/koi8_u.c' || echo './'`./enc/koi8_u.c
mv -f .deps/big5.Tpo .deps/big5.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT windows_1250.lo -MD -MP -MF .deps/windows_1250.Tpo -c -o windows_1250.lo `test -f './enc/windows_1250.c' || echo './'`./enc/windows_1250.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT koi8_r.lo -MD -MP -MF .deps/koi8_r.Tpo -c ./enc/koi8_r.c  -fPIC -DPIC -o koi8_r.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT koi8_u.lo -MD -MP -MF .deps/koi8_u.Tpo -c ./enc/koi8_u.c  -fPIC -DPIC -o koi8_u.o
mv -f .deps/gb18030.Tpo .deps/gb18030.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT windows_1251.lo -MD -MP -MF .deps/windows_1251.Tpo -c -o windows_1251.lo `test -f './enc/windows_1251.c' || echo './'`./enc/windows_1251.c
mv -f .deps/koi8_r.Tpo .deps/koi8_r.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT windows_1252.lo -MD -MP -MF .deps/windows_1252.Tpo -c -o windows_1252.lo `test -f './enc/windows_1252.c' || echo './'`./enc/windows_1252.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT windows_1250.lo -MD -MP -MF .deps/windows_1250.Tpo -c ./enc/windows_1250.c  -fPIC -DPIC -o windows_1250.o
mv -f .deps/koi8_u.Tpo .deps/koi8_u.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT windows_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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT windows_1254.lo -MD -MP -MF .deps/windows_1254.Tpo -c -o windows_1254.lo `test -f './enc/windows_1254.c' || echo './'`./enc/windows_1254.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT windows_1251.lo -MD -MP -MF .deps/windows_1251.Tpo -c ./enc/windows_1251.c  -fPIC -DPIC -o windows_1251.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT windows_1253.lo -MD -MP -MF .deps/windows_1253.Tpo -c ./enc/windows_1253.c  -fPIC -DPIC -o windows_1253.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT windows_1252.lo -MD -MP -MF .deps/windows_1252.Tpo -c ./enc/windows_1252.c  -fPIC -DPIC -o windows_1252.o
mv -f .deps/windows_1251.Tpo .deps/windows_1251.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT windows_1257.lo -MD -MP -MF .deps/windows_1257.Tpo -c -o windows_1257.lo `test -f './enc/windows_1257.c' || echo './'`./enc/windows_1257.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT windows_1254.lo -MD -MP -MF .deps/windows_1254.Tpo -c ./enc/windows_1254.c  -fPIC -DPIC -o windows_1254.o
mv -f .deps/windows_1253.Tpo .deps/windows_1253.Plo
sed -e 's,[@]datadir[@],/usr/share,g' -e 's,[@]datarootdir[@],/usr/share,g' -e 's,[@]PACKAGE_VERSION[@],6.0.0,g' -e 's,[@]prefix[@],/usr,g' -e 's,[@]exec_prefix[@],/usr,g' -e 's,[@]libdir[@],/usr/lib,g' -e 's,[@]includedir[@],/usr/include,g' < ./onigmo.pc.in > onigmo.pc
mv -f .deps/windows_1252.Tpo .deps/windows_1252.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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT windows_1257.lo -MD -MP -MF .deps/windows_1257.Tpo -c ./enc/windows_1257.c  -fPIC -DPIC -o windows_1257.o
mv -f .deps/windows_1257.Tpo .deps/windows_1257.Plo
/bin/bash ./libtool  --tag=CC   --mode=link gcc -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -version-info 6:0:0 -no-undefined -Wl,-z,relro -Wl,-z,now -o libonigmo.la -rpath /usr/lib regerror.lo regparse.lo regext.lo regcomp.lo regexec.lo reggnu.lo regenc.lo regsyntax.lo regtrav.lo regversion.lo st.lo regposix.lo regposerr.lo unicode.lo ascii.lo utf_8.lo utf_16be.lo utf_16le.lo utf_32be.lo utf_32le.lo euc_jp.lo shift_jis.lo windows_31j.lo iso_8859_1.lo iso_8859_2.lo iso_8859_3.lo iso_8859_4.lo iso_8859_5.lo iso_8859_6.lo iso_8859_7.lo iso_8859_8.lo iso_8859_9.lo iso_8859_10.lo iso_8859_11.lo iso_8859_13.lo iso_8859_14.lo iso_8859_15.lo iso_8859_16.lo euc_tw.lo euc_kr.lo big5.lo gb18030.lo koi8_r.lo koi8_u.lo windows_1250.lo windows_1251.lo windows_1252.lo windows_1253.lo windows_1254.lo windows_1257.lo  
libtool: link: ar cru .libs/libonigmo.a  regerror.o regparse.o regext.o regcomp.o regexec.o reggnu.o regenc.o regsyntax.o regtrav.o regversion.o st.o regposix.o regposerr.o unicode.o ascii.o utf_8.o utf_16be.o utf_16le.o utf_32be.o utf_32le.o euc_jp.o shift_jis.o windows_31j.o iso_8859_1.o iso_8859_2.o iso_8859_3.o iso_8859_4.o iso_8859_5.o iso_8859_6.o iso_8859_7.o iso_8859_8.o iso_8859_9.o iso_8859_10.o iso_8859_11.o iso_8859_13.o iso_8859_14.o iso_8859_15.o iso_8859_16.o euc_tw.o euc_kr.o big5.o gb18030.o koi8_r.o koi8_u.o windows_1250.o windows_1251.o windows_1252.o windows_1253.o windows_1254.o windows_1257.o
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libonigmo.a
libtool: link: ( cd ".libs" && rm -f "libonigmo.la" && ln -s "../libonigmo.la" "libonigmo.la" )
make[7]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
Making all in sample
make[7]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source/sample'
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT encode.o -MD -MP -MF .deps/encode.Tpo -c -o encode.o encode.c
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT listcap.o -MD -MP -MF .deps/listcap.Tpo -c -o listcap.o listcap.c
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT names.o -MD -MP -MF .deps/names.Tpo -c -o names.o names.c
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT posix.o -MD -MP -MF .deps/posix.Tpo -c -o posix.o posix.c
encode.c: In function 'search':
encode.c:25:31: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                               ^
encode.c:25:35: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                                   ^
encode.c: In function 'main':
encode.c:128:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
     ^~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:128:15: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
               ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:130:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
     ^~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:130:15: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
               ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:132:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
     ^~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:132:15: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
               ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:134:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
     ^~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:134:15: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc\\w", " AbCd");
               ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
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");
     ^~~~~~~~
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);
                           ^
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);
                               ^
listcap.c: In function 'node_callback_last':
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
listcap.c:40:27: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
   fprintf(stderr, "%d: (%ld-%ld)\n", group, beg, end);
                           ^
listcap.c:40:31: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
   fprintf(stderr, "%d: (%ld-%ld)\n", group, beg, end);
                               ^
encode.c: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,
 ^~~~
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]);
                               ^
listcap.c:77:35: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                                   ^
encode.c: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,
 ^~~~
names.c: In function 'name_callback':
names.c:20:7: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     s = (ref == gn ? "*" : "");
       ^
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,
 ^~~~
names.c:22:25: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'OnigPosition {aka int}' [-Wformat=]
     fprintf(stderr, "(%ld-%ld) %s\n", region->beg[gn], region->end[gn], s);
                         ^
names.c:22:29: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
     fprintf(stderr, "(%ld-%ld) %s\n", region->beg[gn], region->end[gn], s);
                             ^
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/posix.Tpo .deps/posix.Po
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT simple.o -MD -MP -MF .deps/simple.Tpo -c -o simple.o simple.c
mv -f .deps/names.Tpo .deps/names.Po
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT sql.o -MD -MP -MF .deps/sql.Tpo -c -o sql.o sql.c
mv -f .deps/listcap.Tpo .deps/listcap.Po
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]);
                               ^
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT syntax.o -MD -MP -MF .deps/syntax.Tpo -c -o syntax.o syntax.c
simple.c:39:35: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                                   ^
sql.c: In function 'main':
sql.c:56:31: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                               ^
sql.c:56:35: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                                   ^
mv -f .deps/simple.Tpo .deps/simple.Po
syntax.c: In function 'exec':
syntax.c:39:31: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                               ^
syntax.c:39:35: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                                   ^
syntax.c: In function 'main':
syntax.c:65:5: warning: passing argument 2 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\\p{XDigit}\\P{XDigit}\\p{^XDigit}\\P{^XDigit}\\p{XDigit}",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
syntax.c:8:12: note: expected 'char *' but argument is of type 'const char *'
 extern int exec(const OnigSyntaxType* syntax,
            ^~~~
syntax.c:66:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "bgh3a");
     ^~~~~~~
syntax.c:8:12: note: expected 'char *' but argument is of type 'const char *'
 extern int exec(const OnigSyntaxType* syntax,
            ^~~~
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT scan.o -MD -MP -MF .deps/scan.Tpo -c -o scan.o scan.c
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/encode.Tpo .deps/encode.Po
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT crnl.o -MD -MP -MF .deps/crnl.Tpo -c -o crnl.o crnl.c
mv -f .deps/sql.Tpo .deps/sql.Po
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o encode encode.o ../libonigmo.la 
scan.c: In function 'scan_callback':
scan.c:13:28: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'OnigPosition {aka int}' [-Wformat=]
   fprintf(stdout, "scan: %ld\n", n);
                            ^
scan.c:15:31: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'OnigPosition {aka int}' [-Wformat=]
   fprintf(stdout, "match at %ld\n", r);
                               ^
scan.c:17:29: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
     fprintf(stdout, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                             ^
scan.c:17:33: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
     fprintf(stdout, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                                 ^
mv -f .deps/syntax.Tpo .deps/syntax.Po
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)
 ^~~~
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o listcap listcap.o ../libonigmo.la 
crnl.c: In function 'main':
crnl.c:105:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 1, "",        "\r\n",        0,  0);
         ^~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:105:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 1, "",        "\r\n",        0,  0);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:107:9: warning: passing argument 2 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f( 2, ".",       "\r\n");
         ^~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:107:20: warning: passing argument 3 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f( 2, ".",       "\r\n");
                    ^~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:108:9: warning: passing argument 2 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f( 3, "..",      "\r\n");
         ^~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:108:20: warning: passing argument 3 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f( 3, "..",      "\r\n");
                    ^~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:109:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 4, "^",       "\r\n",        0,  0);
         ^~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:109:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 4, "^",       "\r\n",        0,  0);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:110:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 5, "\\n^",    "\r\nf",       1,  2);
         ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:110:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 5, "\\n^",    "\r\nf",       1,  2);
                    ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:111:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 6, "\\n^a",   "\r\na",       1,  3);
         ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:111:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 6, "\\n^a",   "\r\na",       1,  3);
                    ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:112:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 7, "$",       "\r\n",        0,  0);
         ^~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:112:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 7, "$",       "\r\n",        0,  0);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:113:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 8, "T$",      "T\r\n",       0,  1);
         ^~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:113:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 8, "T$",      "T\r\n",       0,  1);
                    ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:117:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 9, "T$",      "T\raT\r\n",   3,  4);
         ^~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:117:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x( 9, "T$",      "T\raT\r\n",   3,  4);
                    ^~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:119:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(10, "\\z",     "\r\n",        2,  2);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:119:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(10, "\\z",     "\r\n",        2,  2);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:120:9: warning: passing argument 2 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(11, "a\\z",    "a\r\n");
         ^~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:120:20: warning: passing argument 3 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(11, "a\\z",    "a\r\n");
                    ^~~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:121:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(12, "\\Z",     "\r\n",        0,  0);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:121:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(12, "\\Z",     "\r\n",        0,  0);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:122:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(13, "\\Z",     "\r\na",       3,  3);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:122:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(13, "\\Z",     "\r\na",       3,  3);
                    ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:123:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(14, "\\Z",     "\r\n\r\n\n",  4,  4);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:123:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(14, "\\Z",     "\r\n\r\n\n",  4,  4);
                    ^~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:124:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(15, "\\Z",     "\r\n\r\nX",   5,  5);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:124:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(15, "\\Z",     "\r\n\r\nX",   5,  5);
                    ^~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:125:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(16, "a\\Z",    "a\r\n",       0,  1);
         ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:125:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(16, "a\\Z",    "a\r\n",       0,  1);
                    ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:126:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(17, "aaaaaaaaaaaaaaa\\Z",   "aaaaaaaaaaaaaaa\r\n",  0,  15);
         ^~~~~~~~~~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:126:33: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(17, "aaaaaaaaaaaaaaa\\Z",   "aaaaaaaaaaaaaaa\r\n",  0,  15);
                                 ^~~~~~~~~~~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:127:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(18, "a|$",     "b\r\n",       1,  1);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:127:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(18, "a|$",     "b\r\n",       1,  1);
                    ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:131:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(19, "$|b",     "\rb",         1,  2);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:131:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(19, "$|b",     "\rb",         1,  2);
                    ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:133:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(20, "a$|ab$",  "\r\nab\r\n",  2,  4);
         ^~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:133:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(20, "a$|ab$",  "\r\nab\r\n",  2,  4);
                    ^~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:135:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(21, "a|\\Z",       "b\r\n",       1,  1);
         ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:135:24: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(21, "a|\\Z",       "b\r\n",       1,  1);
                        ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:139:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(22, "\\Z|b",       "\rb",         1,  2);
         ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:139:24: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(22, "\\Z|b",       "\rb",         1,  2);
                        ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:141:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(23, "a\\Z|ab\\Z",  "\r\nab\r\n",  2,  4);
         ^~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:141:24: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(23, "a\\Z|ab\\Z",  "\r\nab\r\n",  2,  4);
                        ^~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:142:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(24, "(?=a$).",     "a\r\n",       0,  1);
         ^~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:142:24: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(24, "(?=a$).",     "a\r\n",       0,  1);
                        ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:147:9: warning: passing argument 2 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(25, "(?=a$).",     "a\r");
         ^~~~~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:147:24: warning: passing argument 3 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(25, "(?=a$).",     "a\r");
                        ^~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:148:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(26, "(?!a$)..",    "a\r",         0,  2);
         ^~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:148:24: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(26, "(?!a$)..",    "a\r",         0,  2);
                        ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:151:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(27, "(?<=a$)\\r\\n", "a\r\n",       1,  3);
         ^~~~~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:151:26: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(27, "(?<=a$)\\r\\n", "a\r\n",       1,  3);
                          ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:153:9: warning: passing argument 2 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(28, "(?<!a$)\\r\\n", "a\r\n");
         ^~~~~~~~~~~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:153:26: warning: passing argument 3 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(28, "(?<!a$)\\r\\n", "a\r\n");
                          ^~~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:154:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(29, "(?=a\\Z).",     "a\r\n",       0,  1);
         ^~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:154:26: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(29, "(?=a\\Z).",     "a\r\n",       0,  1);
                          ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:159:9: warning: passing argument 2 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(30, "(?=a\\Z).",     "a\r");
         ^~~~~~~~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:159:26: warning: passing argument 3 of 'f' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f(30, "(?=a\\Z).",     "a\r");
                          ^~~~~
crnl.c:98:1: note: expected 'char *' but argument is of type 'const char *'
 f(int no, char* pattern_arg, char* str_arg)
 ^
crnl.c:160:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(31, "(?!a\\Z)..",    "a\r",         0,  2);
         ^~~~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:160:26: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(31, "(?!a\\Z)..",    "a\r",         0,  2);
                          ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:163:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(32, ".*$",     "aa\r\n",      0,  2);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:163:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(32, ".*$",     "aa\r\n",      0,  2);
                    ^~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:167:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(33, ".*$",     "aa\r",        0,  3);
         ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:167:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(33, ".*$",     "aa\r",        0,  3);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:169:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(34, "\\R{3}",  "\r\r\n\n",    0,  4);
         ^~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:169:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(34, "\\R{3}",  "\r\r\n\n",    0,  4);
                    ^~~~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:170:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(35, "$",       "\n",          0,  0);
         ^~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:170:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(35, "$",       "\n",          0,  0);
                    ^~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:171:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(36, "T$",      "T\n",         0,  1);
         ^~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:171:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(36, "T$",      "T\n",         0,  1);
                    ^~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:172:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(37, "(?m).",   "\r\n",        0,  1);
         ^~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:172:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(37, "(?m).",   "\r\n",        0,  1);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:173:9: warning: passing argument 2 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(38, "(?m)..",  "\r\n",        0,  2);
         ^~~~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:173:20: warning: passing argument 3 of 'x' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x(38, "(?m)..",  "\r\n",        0,  2);
                    ^~~~~~
crnl.c:85:1: note: expected 'char *' but argument is of type 'const char *'
 x(int no, char* pattern_arg, char* str_arg,
 ^
crnl.c:174:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(39, "^",      "\n.",     1,  1,  1,  0);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:174:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(39, "^",      "\n.",     1,  1,  1,  0);
                    ^~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:175:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(40, "^",      "\r\n.",   1,  2,  2,  0);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:175:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(40, "^",      "\r\n.",   1,  2,  2,  0);
                    ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:176:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(41, "^",      "\r\n.",   2,  2,  2,  0);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:176:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(41, "^",      "\r\n.",   2,  2,  2,  0);
                    ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:177:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(42, "$",      "\n\n",    1,  1,  1,  0);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:177:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(42, "$",      "\n\n",    1,  1,  1,  0);
                    ^~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:178:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(43, "$",      "\r\n\n",  1,  2,  2,  0);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:178:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(43, "$",      "\r\n\n",  1,  2,  2,  0);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:179:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(44, "$",      "\r\n\n",  2,  2,  2,  0);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:179:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(44, "$",      "\r\n\n",  2,  2,  2,  0);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:183:10: warning: passing argument 2 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(45, "^$",     "\n\r",    1,  0);
          ^~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:183:20: warning: passing argument 3 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(45, "^$",     "\n\r",    1,  0);
                    ^~~~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:185:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(46, "^$",     "\n\r\n",  1,  1,  1,  0);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:185:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(46, "^$",     "\n\r\n",  1,  1,  1,  0);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:186:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(47, "^$",     "\r\n\n",  1,  2,  2,  0);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:186:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(47, "^$",     "\r\n\n",  1,  2,  2,  0);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:187:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(48, "\\Z",    "\r\n\n",  1,  2,  2,  0);
          ^~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:187:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(48, "\\Z",    "\r\n\n",  1,  2,  2,  0);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:188:10: warning: passing argument 2 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(49, ".(?=\\Z)", "\r\n",  1,  0);
          ^~~~~~~~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:188:22: warning: passing argument 3 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(49, ".(?=\\Z)", "\r\n",  1,  0);
                      ^~~~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:189:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(50, "(?=\\Z)", "\r\n",   1,  2,  2,  0);
          ^~~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:189:21: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(50, "(?=\\Z)", "\r\n",   1,  2,  2,  0);
                     ^~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:190:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(51, "(?<=^).", "\r\n.",  0,  2,  3,  0);
          ^~~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:190:21: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(51, "(?<=^).", "\r\n.",  0,  2,  3,  0);
                     ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:191:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(52, "(?<=^).", "\r\n.",  1,  2,  3,  0);
          ^~~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:191:21: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(52, "(?<=^).", "\r\n.",  1,  2,  3,  0);
                     ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:192:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(53, "(?<=^).", "\r\n.",  2,  2,  3,  0);
          ^~~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:192:21: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(53, "(?<=^).", "\r\n.",  2,  2,  3,  0);
                     ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:193:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(54, "^a",      "\r\na",  0,  2,  3,  0);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:193:21: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(54, "^a",      "\r\na",  0,  2,  3,  0);
                     ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:194:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(55, "^a",      "\r\na",  1,  2,  3,  0);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:194:21: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(55, "^a",      "\r\na",  1,  2,  3,  0);
                     ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:195:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(56, "(?m)$.{1,2}a", "\r\na", 0,  0,  3,  0);
          ^~~~~~~~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:195:26: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(56, "(?m)$.{1,2}a", "\r\na", 0,  0,  3,  0);
                          ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:196:10: warning: passing argument 2 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(57, "(?m)$.{1,2}a", "\r\na", 1,  0);
          ^~~~~~~~~~~~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:196:26: warning: passing argument 3 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(57, "(?m)$.{1,2}a", "\r\na", 1,  0);
                          ^~~~~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:197:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(58, ".*b",      "\r\naaab\r\n",  1,  2,  6,  0);
          ^~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:197:22: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(58, ".*b",      "\r\naaab\r\n",  1,  2,  6,  0);
                      ^~~~~~~~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:201:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(60, "$",      "\n\n",   -1,  1,  1,  1);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:201:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(60, "$",      "\n\n",   -1,  1,  1,  1);
                    ^~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:202:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(61, "$",      "\n\r\n", -1,  1,  1,  1);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:202:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(61, "$",      "\n\r\n", -1,  1,  1,  1);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:203:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(62, "$",      "\n\r\n", -2,  1,  1,  1);
          ^~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:203:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(62, "$",      "\n\r\n", -2,  1,  1,  1);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:204:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(63, "^$",     "\n\r\n", -1,  1,  1,  1);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:204:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(63, "^$",     "\n\r\n", -1,  1,  1,  1);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:205:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(64, "^$",     "\n\r\n",  0,  1,  1,  1);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:205:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(64, "^$",     "\n\r\n",  0,  1,  1,  1);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:206:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(65, "^$",     "\r\n\n",  0,  2,  2,  1);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:206:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(65, "^$",     "\r\n\n",  0,  2,  2,  1);
                    ^~~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:207:10: warning: passing argument 2 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(66, "^a",     "\r\na",   0,  2,  3,  1);
          ^~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:207:20: warning: passing argument 3 of 'x0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   x0(66, "^a",     "\r\na",   0,  2,  3,  1);
                    ^~~~~~~
crnl.c:32:1: note: expected 'char *' but argument is of type 'const char *'
 x0(int no, char* pattern_arg, char* str_arg,
 ^~
crnl.c:209:10: warning: passing argument 2 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(67, "^a",     "\r\na",  -1,  1); /* This should not match after the fix of Issue #22. */
          ^~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:209:20: warning: passing argument 3 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(67, "^a",     "\r\na",  -1,  1); /* This should not match after the fix of Issue #22. */
                    ^~~~~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:210:10: warning: passing argument 2 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(68, "^a",     "\r\na",  -2,  1);
          ^~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
crnl.c:210:20: warning: passing argument 3 of 'f0' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   f0(68, "^a",     "\r\na",  -2,  1);
                    ^~~~~~~
crnl.c:92:1: note: expected 'char *' but argument is of type 'const char *'
 f0(int no, char* pattern_arg, char* str_arg, int start_offset, int backward)
 ^~
mv -f .deps/scan.Tpo .deps/scan.Po
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o names names.o ../libonigmo.la 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o encode encode.o  ../.libs/libonigmo.a
mv -f .deps/crnl.Tpo .deps/crnl.Po
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o posix posix.o ../libonigmo.la 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o listcap listcap.o  ../.libs/libonigmo.a
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o simple simple.o ../libonigmo.la 
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o sql sql.o ../libonigmo.la 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o names names.o  ../.libs/libonigmo.a
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o syntax syntax.o ../libonigmo.la 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o posix posix.o  ../.libs/libonigmo.a
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o scan scan.o ../libonigmo.la 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o simple simple.o  ../.libs/libonigmo.a
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o sql sql.o  ../.libs/libonigmo.a
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o crnl crnl.o ../libonigmo.la 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o syntax syntax.o  ../.libs/libonigmo.a
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o scan scan.o  ../.libs/libonigmo.a
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wl,-z -Wl,relro -Wl,-z -Wl,now -o crnl crnl.o  ../.libs/libonigmo.a
make[7]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source/sample'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo'
Making all in mecab
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/mecab'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mecab'
Making all in message_pack
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/message_pack'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/message_pack'
Making all in mruby
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/mruby'
make  all-am
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/mruby'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mrblib.lo mrblib.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mrbgems_init.lo mrbgems_init.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/array.lo ../mruby-source/src/array.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/backtrace.lo ../mruby-source/src/backtrace.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mrblib.c  -fPIC -DPIC -o .libs/mrblib.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mrbgems_init.c  -fPIC -DPIC -o .libs/mrbgems_init.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/array.c  -fPIC -DPIC -o ../mruby-source/src/.libs/array.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/backtrace.c  -fPIC -DPIC -o ../mruby-source/src/.libs/backtrace.o
../mruby-source/src/array.c: In function 'ary_new_capa':
../mruby-source/src/array.c:42:7: warning: cast increases required alignment of target type [-Wcast-align]
   a = (struct RArray*)mrb_obj_alloc(mrb, MRB_TT_ARRAY, mrb->array_class);
       ^
../mruby-source/src/array.c: In function 'ary_subseq':
../mruby-source/src/array.c:639:8: warning: cast increases required alignment of target type [-Wcast-align]
   b  = (struct RArray*)mrb_obj_alloc(mrb, MRB_TT_ARRAY, mrb->array_class);
        ^
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/class.lo ../mruby-source/src/class.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/codedump.lo ../mruby-source/src/codedump.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/class.c  -fPIC -DPIC -o ../mruby-source/src/.libs/class.o
In file included from ./../mruby-source/include/mruby/proc.h:73:0,
                 from ../mruby-source/src/class.c:12:
../mruby-source/src/class.c: In function 'kh_alloc_mt':
./../mruby-source/include/mruby/khash.h:104:15: warning: cast increases required alignment of target type [-Wcast-align]
     h->keys = (khkey_t *)p;                                             \
               ^
../mruby-source/src/class.c:18:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE(mt, mrb_sym, struct RProc*, TRUE, kh_int_hash_func, kh_int_hash_equal)
 ^~~~~~~~~~~~
./../mruby-source/include/mruby/khash.h:105:27: warning: cast increases required alignment of target type [-Wcast-align]
     h->vals = kh_is_map ? (khval_t *)(p+sizeof(khkey_t)*sz) : NULL;     \
                           ^
../mruby-source/src/class.c:18:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE(mt, mrb_sym, struct RProc*, TRUE, kh_int_hash_func, kh_int_hash_equal)
 ^~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/codedump.c  -fPIC -DPIC -o ../mruby-source/src/.libs/codedump.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/compar.lo ../mruby-source/src/compar.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/crc.lo ../mruby-source/src/crc.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/debug.lo ../mruby-source/src/debug.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/compar.c  -fPIC -DPIC -o ../mruby-source/src/.libs/compar.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/crc.c  -fPIC -DPIC -o ../mruby-source/src/.libs/crc.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/dump.lo ../mruby-source/src/dump.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/debug.c  -fPIC -DPIC -o ../mruby-source/src/.libs/debug.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/enum.lo ../mruby-source/src/enum.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/dump.c  -fPIC -DPIC -o ../mruby-source/src/.libs/dump.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/error.lo ../mruby-source/src/error.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/enum.c  -fPIC -DPIC -o ../mruby-source/src/.libs/enum.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/etc.lo ../mruby-source/src/etc.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/error.c  -fPIC -DPIC -o ../mruby-source/src/.libs/error.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/etc.c  -fPIC -DPIC -o ../mruby-source/src/.libs/etc.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/fmt_fp.lo ../mruby-source/src/fmt_fp.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/fmt_fp.c  -fPIC -DPIC -o ../mruby-source/src/.libs/fmt_fp.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/gc.lo ../mruby-source/src/gc.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/hash.lo ../mruby-source/src/hash.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/hash.c  -fPIC -DPIC -o ../mruby-source/src/.libs/hash.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/gc.c  -fPIC -DPIC -o ../mruby-source/src/.libs/gc.o
In file included from ./../mruby-source/include/mruby/hash.h:11:0,
                 from ../mruby-source/src/hash.c:10:
../mruby-source/src/hash.c: In function 'kh_alloc_ht':
./../mruby-source/include/mruby/khash.h:104:15: warning: cast increases required alignment of target type [-Wcast-align]
     h->keys = (khkey_t *)p;                                             \
               ^
../mruby-source/src/hash.c:94:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE (ht, mrb_value, mrb_hash_value, TRUE, mrb_hash_ht_hash_func, mrb_hash_ht_hash_equal)
 ^~~~~~~~~~~~
./../mruby-source/include/mruby/khash.h:105:27: warning: cast increases required alignment of target type [-Wcast-align]
     h->vals = kh_is_map ? (khval_t *)(p+sizeof(khkey_t)*sz) : NULL;     \
                           ^
../mruby-source/src/hash.c:94:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE (ht, mrb_value, mrb_hash_value, TRUE, mrb_hash_ht_hash_func, mrb_hash_ht_hash_equal)
 ^~~~~~~~~~~~
../mruby-source/src/gc.c: In function 'add_heap':
../mruby-source/src/gc.c:194:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:328:12: note: in expansion of macro 'objects'
   for (p = objects(page), e=p+MRB_HEAP_PAGE_SIZE; p<e; p++) {
            ^~~~~~~
../mruby-source/src/gc.c:328:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   for (p = objects(page), e=p+MRB_HEAP_PAGE_SIZE; p<e; p++) {
   ^~~
../mruby-source/src/gc.c: In function 'free_heap':
../mruby-source/src/gc.c:194:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:382:14: note: in expansion of macro 'objects'
     for (p = objects(tmp), e=p+MRB_HEAP_PAGE_SIZE; p<e; p++) {
              ^~~~~~~
../mruby-source/src/gc.c:382:5: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     for (p = objects(tmp), e=p+MRB_HEAP_PAGE_SIZE; p<e; p++) {
     ^~~
../mruby-source/src/gc.c: In function 'mrb_obj_alloc':
../mruby-source/src/gc.c:500:4: warning: cast increases required alignment of target type [-Wcast-align]
   *(RVALUE *)p = RVALUE_zero;
    ^
../mruby-source/src/gc.c: In function 'gc_mark_children':
../mruby-source/src/gc.c:638:26: warning: cast increases required alignment of target type [-Wcast-align]
       struct RArray *a = (struct RArray*)obj;
                          ^
../mruby-source/src/gc.c: In function 'obj_free':
../mruby-source/src/gc.c:751:28: warning: cast increases required alignment of target type [-Wcast-align]
       mrb_ary_decref(mrb, ((struct RArray*)obj)->aux.shared);
                            ^
../mruby-source/src/gc.c:753:22: warning: cast increases required alignment of target type [-Wcast-align]
       mrb_free(mrb, ((struct RArray*)obj)->ptr);
                      ^
../mruby-source/src/gc.c:762:26: warning: cast increases required alignment of target type [-Wcast-align]
     mrb_gc_free_str(mrb, (struct RString*)obj);
                          ^
../mruby-source/src/gc.c: In function 'gc_gray_mark':
../mruby-source/src/gc.c:889:26: warning: cast increases required alignment of target type [-Wcast-align]
       struct RArray *a = (struct RArray*)obj;
                          ^
../mruby-source/src/gc.c: In function 'incremental_sweep_phase':
../mruby-source/src/gc.c:194:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:961:17: note: in expansion of macro 'objects'
     RVALUE *p = objects(page);
                 ^~~~~~~
../mruby-source/src/gc.c:961:5: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     RVALUE *p = objects(page);
     ^~~~~~
../mruby-source/src/gc.c: In function 'gc_each_objects':
../mruby-source/src/gc.c:194:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:1430:9: note: in expansion of macro 'objects'
     p = objects(page);
         ^~~~~~~
../mruby-source/src/gc.c:1430:5: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     p = objects(page);
     ^
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/init.lo ../mruby-source/src/init.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/init.c  -fPIC -DPIC -o ../mruby-source/src/.libs/init.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/kernel.lo ../mruby-source/src/kernel.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/load.lo ../mruby-source/src/load.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/kernel.c  -fPIC -DPIC -o ../mruby-source/src/.libs/kernel.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/load.c  -fPIC -DPIC -o ../mruby-source/src/.libs/load.o
In file included from ./../mruby-source/include/mruby/proc.h:73:0,
                 from ../mruby-source/src/kernel.c:10:
../mruby-source/src/kernel.c: In function 'kh_alloc_st':
./../mruby-source/include/mruby/khash.h:104:15: warning: cast increases required alignment of target type [-Wcast-align]
     h->keys = (khkey_t *)p;                                             \
               ^
../mruby-source/src/kernel.c:636:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE(st, mrb_sym, char, FALSE, kh_int_hash_func, kh_int_hash_equal)
 ^~~~~~~~~~~~
../mruby-source/src/load.c: In function 'read_irep_record_1':
../mruby-source/src/load.c:81:20: warning: cast increases required alignment of target type [-Wcast-align]
       irep->iseq = (mrb_code*)src;
                    ^
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/numeric.lo ../mruby-source/src/numeric.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/object.lo ../mruby-source/src/object.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/numeric.c  -fPIC -DPIC -o ../mruby-source/src/.libs/numeric.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/object.c  -fPIC -DPIC -o ../mruby-source/src/.libs/object.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/pool.lo ../mruby-source/src/pool.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/pool.c  -fPIC -DPIC -o ../mruby-source/src/.libs/pool.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/proc.lo ../mruby-source/src/proc.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/range.lo ../mruby-source/src/range.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/print.c  -fPIC -DPIC -o ../mruby-source/src/.libs/print.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/proc.c  -fPIC -DPIC -o ../mruby-source/src/.libs/proc.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/range.c  -fPIC -DPIC -o ../mruby-source/src/.libs/range.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/state.lo ../mruby-source/src/state.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/string.lo ../mruby-source/src/string.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/symbol.lo ../mruby-source/src/symbol.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/string.c  -fPIC -DPIC -o ../mruby-source/src/.libs/string.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/state.c  -fPIC -DPIC -o ../mruby-source/src/.libs/state.o
../mruby-source/src/string.c: In function 'str_new_static':
../mruby-source/src/string.c:39:11: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (len >= MRB_INT_MAX) {
           ^~
../mruby-source/src/string.c:32:36: warning: cast increases required alignment of target type [-Wcast-align]
 #define mrb_obj_alloc_string(mrb) ((struct RString*)mrb_obj_alloc((mrb), MRB_TT_STRING, (mrb)->string_class))
                                    ^
../mruby-source/src/string.c:42:7: note: in expansion of macro 'mrb_obj_alloc_string'
   s = mrb_obj_alloc_string(mrb);
       ^~~~~~~~~~~~~~~~~~~~
../mruby-source/src/string.c: In function 'str_new':
../mruby-source/src/string.c:32:36: warning: cast increases required alignment of target type [-Wcast-align]
 #define mrb_obj_alloc_string(mrb) ((struct RString*)mrb_obj_alloc((mrb), MRB_TT_STRING, (mrb)->string_class))
                                    ^
../mruby-source/src/string.c:59:7: note: in expansion of macro 'mrb_obj_alloc_string'
   s = mrb_obj_alloc_string(mrb);
       ^~~~~~~~~~~~~~~~~~~~
../mruby-source/src/string.c:67:13: warning: comparison is always false due to limited range of data type [-Wtype-limits]
     if (len >= MRB_INT_MAX) {
             ^~
../mruby-source/src/string.c: In function 'mrb_str_buf_new':
../mruby-source/src/string.c:32:36: warning: cast increases required alignment of target type [-Wcast-align]
 #define mrb_obj_alloc_string(mrb) ((struct RString*)mrb_obj_alloc((mrb), MRB_TT_STRING, (mrb)->string_class))
                                    ^
../mruby-source/src/string.c:105:7: note: in expansion of macro 'mrb_obj_alloc_string'
   s = mrb_obj_alloc_string(mrb);
       ^~~~~~~~~~~~~~~~~~~~
../mruby-source/src/string.c:107:12: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (capa >= MRB_INT_MAX) {
            ^~
../mruby-source/src/string.c: In function 'str_buf_cat':
../mruby-source/src/string.c:165:20: warning: comparison is always false due to limited range of data type [-Wtype-limits]
       if (capa + 1 >= MRB_INT_MAX / 2) {
                    ^~
../mruby-source/src/string.c: In function 'byte_subseq':
../mruby-source/src/string.c:32:36: warning: cast increases required alignment of target type [-Wcast-align]
 #define mrb_obj_alloc_string(mrb) ((struct RString*)mrb_obj_alloc((mrb), MRB_TT_STRING, (mrb)->string_class))
                                    ^
../mruby-source/src/string.c:425:9: note: in expansion of macro 'mrb_obj_alloc_string'
     s = mrb_obj_alloc_string(mrb);
         ^~~~~~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/variable.lo ../mruby-source/src/variable.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/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:36:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE (n2s, mrb_sym, mrb_sym, FALSE, sym_hash_func, sym_hash_equal)
 ^~~~~~~~~~~~
./../mruby-source/include/mruby/khash.h:105:27: warning: cast increases required alignment of target type [-Wcast-align]
     h->vals = kh_is_map ? (khval_t *)(p+sizeof(khkey_t)*sz) : NULL;     \
                           ^
../mruby-source/src/symbol.c:36:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE (n2s, mrb_sym, mrb_sym, FALSE, sym_hash_func, sym_hash_equal)
 ^~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/version.lo ../mruby-source/src/version.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/variable.c  -fPIC -DPIC -o ../mruby-source/src/.libs/variable.o
In file included from ./../mruby-source/include/mruby/proc.h:73:0,
                 from ../mruby-source/src/variable.c:10:
../mruby-source/src/variable.c: In function 'kh_alloc_iv':
./../mruby-source/include/mruby/khash.h:104:15: warning: cast increases required alignment of target type [-Wcast-align]
     h->keys = (khkey_t *)p;                                             \
               ^
../mruby-source/src/variable.c:292:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE(iv, mrb_sym, mrb_value, TRUE, kh_int_hash_func, kh_int_hash_equal)
 ^~~~~~~~~~~~
./../mruby-source/include/mruby/khash.h:105:27: warning: cast increases required alignment of target type [-Wcast-align]
     h->vals = kh_is_map ? (khval_t *)(p+sizeof(khkey_t)*sz) : NULL;     \
                           ^
../mruby-source/src/variable.c:292:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE(iv, mrb_sym, mrb_value, TRUE, kh_int_hash_func, kh_int_hash_equal)
 ^~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/version.c  -fPIC -DPIC -o ../mruby-source/src/.libs/version.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/vm.lo ../mruby-source/src/vm.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-compiler/core/codegen.lo ../mruby-source/mrbgems/mruby-compiler/core/codegen.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/vm.c  -fPIC -DPIC -o ../mruby-source/src/.libs/vm.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-compiler/core/codegen.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-compiler/core/.libs/codegen.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-sprintf/src/kernel.lo ../mruby-source/mrbgems/mruby-sprintf/src/kernel.c
../mruby-source/src/vm.c: In function 'mrb_funcall_with_block':
../mruby-source/src/vm.c:323:64: warning: argument 'mid' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
 mrb_funcall_with_block(mrb_state *mrb, mrb_value self, mrb_sym mid, mrb_int argc, const mrb_value *argv, mrb_value blk)
                                                                ^~~
../mruby-source/src/vm.c:323:77: warning: argument 'argc' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
 mrb_funcall_with_block(mrb_state *mrb, mrb_value self, mrb_sym mid, mrb_int argc, const mrb_value *argv, mrb_value blk)
                                                                             ^~~~
../mruby-source/src/vm.c:323:100: warning: argument 'argv' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
 mrb_funcall_with_block(mrb_state *mrb, mrb_value self, mrb_sym mid, mrb_int argc, const mrb_value *argv, mrb_value blk)
                                                                                                    ^~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-sprintf/src/kernel.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-sprintf/src/.libs/kernel.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-sprintf/src/sprintf.lo ../mruby-source/mrbgems/mruby-sprintf/src/sprintf.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-sprintf/src/sprintf.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-sprintf/src/.libs/sprintf.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-print/src/print.lo ../mruby-source/mrbgems/mruby-print/src/print.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-print/src/print.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-print/src/.libs/print.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-math/src/math.lo ../mruby-source/mrbgems/mruby-math/src/math.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-math/src/math.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-math/src/.libs/math.o
../mruby-source/src/vm.c: In function 'mrb_vm_exec':
../mruby-source/src/vm.c:770:43: warning: argument 'proc' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
 mrb_vm_exec(mrb_state *mrb, struct RProc *proc, mrb_code *pc)
                                           ^~~~
../mruby-source/src/vm.c:770:59: warning: argument 'pc' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
 mrb_vm_exec(mrb_state *mrb, struct RProc *proc, mrb_code *pc)
                                                           ^~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-time/src/time.lo ../mruby-source/mrbgems/mruby-time/src/time.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-time/src/time.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-time/src/.libs/time.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-struct/src/struct.lo ../mruby-source/mrbgems/mruby-struct/src/struct.c
../mruby-source/mrbgems/mruby-time/src/time.c: In function 'mrb_time_to_i':
../mruby-source/mrbgems/mruby-time/src/time.c:704:15: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (tm->sec > MRB_INT_MAX || tm->sec < MRB_INT_MIN) {
               ^
../mruby-source/mrbgems/mruby-time/src/time.c:704:40: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (tm->sec > MRB_INT_MAX || tm->sec < MRB_INT_MIN) {
                                        ^
../mruby-source/mrbgems/mruby-time/src/time.c: In function 'mrb_time_usec':
../mruby-source/mrbgems/mruby-time/src/time.c:718:16: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (tm->usec > MRB_INT_MAX || tm->usec < MRB_INT_MIN) {
                ^
../mruby-source/mrbgems/mruby-time/src/time.c:718:42: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (tm->usec > MRB_INT_MAX || tm->usec < MRB_INT_MIN) {
                                          ^
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-struct/src/struct.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-struct/src/.libs/struct.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-string-ext/src/string.lo ../mruby-source/mrbgems/mruby-string-ext/src/string.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-numeric-ext/src/numeric_ext.lo ../mruby-source/mrbgems/mruby-numeric-ext/src/numeric_ext.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-string-ext/src/string.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-string-ext/src/.libs/string.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-array-ext/src/array.lo ../mruby-source/mrbgems/mruby-array-ext/src/array.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-numeric-ext/src/numeric_ext.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-numeric-ext/src/.libs/numeric_ext.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-hash-ext/src/hash-ext.lo ../mruby-source/mrbgems/mruby-hash-ext/src/hash-ext.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-array-ext/src/array.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-array-ext/src/.libs/array.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-hash-ext/src/hash-ext.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-hash-ext/src/.libs/hash-ext.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-range-ext/src/range.lo ../mruby-source/mrbgems/mruby-range-ext/src/range.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-proc-ext/src/proc.lo ../mruby-source/mrbgems/mruby-proc-ext/src/proc.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-proc-ext/test/proc.lo ../mruby-source/mrbgems/mruby-proc-ext/test/proc.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-range-ext/src/range.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-range-ext/src/.libs/range.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-proc-ext/src/proc.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-proc-ext/src/.libs/proc.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-proc-ext/test/proc.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-proc-ext/test/.libs/proc.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-symbol-ext/src/symbol.lo ../mruby-source/mrbgems/mruby-symbol-ext/src/symbol.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-random/src/mt19937ar.lo ../mruby-source/mrbgems/mruby-random/src/mt19937ar.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-random/src/random.lo ../mruby-source/mrbgems/mruby-random/src/random.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-symbol-ext/src/symbol.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-symbol-ext/src/.libs/symbol.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-random/src/mt19937ar.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-random/src/.libs/mt19937ar.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-random/src/random.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-random/src/.libs/random.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-object-ext/src/object.lo ../mruby-source/mrbgems/mruby-object-ext/src/object.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-objectspace/src/mruby_objectspace.lo ../mruby-source/mrbgems/mruby-objectspace/src/mruby_objectspace.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-object-ext/src/object.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-object-ext/src/.libs/object.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-objectspace/src/mruby_objectspace.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-objectspace/src/.libs/mruby_objectspace.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-fiber/src/fiber.lo ../mruby-source/mrbgems/mruby-fiber/src/fiber.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-kernel-ext/src/kernel.lo ../mruby-source/mrbgems/mruby-kernel-ext/src/kernel.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-compiler/core/parse.lo mruby-compiler/core/parse.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-fiber/src/fiber.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-fiber/src/.libs/fiber.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-kernel-ext/src/kernel.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-kernel-ext/src/.libs/kernel.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-compiler/core/parse.c  -fPIC -DPIC -o mruby-compiler/core/.libs/parse.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-onig-regexp/src/mruby_onig_regexp.lo mruby-onig-regexp/src/mruby_onig_regexp.c
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_int':
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:725:33: warning: cast increases required alignment of target type [-Wcast-align]
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:158:40: note: in definition of macro 'list3'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_float':
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:732:34: warning: cast increases required alignment of target type [-Wcast-align]
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_str':
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:739:37: warning: cast increases required alignment of target type [-Wcast-align]
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:739:32: note: in expansion of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_xstr':
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:753:38: warning: cast increases required alignment of target type [-Wcast-align]
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:753:33: note: in expansion of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_regx':
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:38: warning: cast increases required alignment of target type [-Wcast-align]
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:33: note: in expansion of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:54: warning: cast increases required alignment of target type [-Wcast-align]
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:33: note: in expansion of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:49: note: in expansion of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:65: warning: cast increases required alignment of target type [-Wcast-align]
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:33: note: in expansion of macro 'cons'
/home/kou/work/c/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:49: note: in expansion of macro 'cons'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-env/src/env.lo mruby-env/src/env.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-onig-regexp/src/mruby_onig_regexp.c  -fPIC -DPIC -o mruby-onig-regexp/src/.libs/mruby_onig_regexp.o
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'onig_regexp_match':
mruby-onig-regexp/src/mruby_onig_regexp.c:193:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'onig_regexp_equal':
mruby-onig-regexp/src/mruby_onig_regexp.c:215:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_regexp_type, self_reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c:216:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, other, &mrb_onig_regexp_type, other_reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'onig_regexp_casefold_p':
mruby-onig-regexp/src/mruby_onig_regexp.c:232:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'onig_regexp_options':
mruby-onig-regexp/src/mruby_onig_regexp.c:239:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'onig_regexp_inspect':
mruby-onig-regexp/src/mruby_onig_regexp.c:300:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'onig_regexp_to_s':
mruby-onig-regexp/src/mruby_onig_regexp.c:325:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_begin':
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-env/src/env.c  -fPIC -DPIC -o mruby-env/src/.libs/env.o
mruby-onig-regexp/src/mruby_onig_regexp.c:459:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_end':
mruby-onig-regexp/src/mruby_onig_regexp.c:478:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_copy':
mruby-onig-regexp/src/mruby_onig_regexp.c:491:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, src_val, &mrb_onig_region_type, src);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_length':
mruby-onig-regexp/src/mruby_onig_regexp.c:508:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_offset':
mruby-onig-regexp/src/mruby_onig_regexp.c:518:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_post_match':
mruby-onig-regexp/src/mruby_onig_regexp.c:531:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_pre_match':
mruby-onig-regexp/src/mruby_onig_regexp.c:540:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_to_a':
mruby-onig-regexp/src/mruby_onig_regexp.c:566:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_to_s':
mruby-onig-regexp/src/mruby_onig_regexp.c:586:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_region_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'string_gsub':
mruby-onig-regexp/src/mruby_onig_regexp.c:661:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, match_expr, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'string_scan':
mruby-onig-regexp/src/mruby_onig_regexp.c:700:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, match_expr, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'string_split':
mruby-onig-regexp/src/mruby_onig_regexp.c:759:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, pattern, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'string_sub':
mruby-onig-regexp/src/mruby_onig_regexp.c:824:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, match_expr, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-io/src/file.lo mruby-io/src/file.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-io/src/file.c  -fPIC -DPIC -o mruby-io/src/.libs/file.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-io/src/file_test.lo mruby-io/src/file_test.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-io/src/file_test.c  -fPIC -DPIC -o mruby-io/src/.libs/file_test.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-io/src/io.lo mruby-io/src/io.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-io/src/mruby_io_gem.lo mruby-io/src/mruby_io_gem.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-io/src/io.c  -fPIC -DPIC -o mruby-io/src/.libs/io.o
mruby-io/src/io.c: In function 'mrb_io_sysseek':
mruby-io/src/io.c:672:11: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (pos > MRB_INT_MAX) {
           ^
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-io/src/mruby_io_gem.c  -fPIC -DPIC -o mruby-io/src/.libs/mruby_io_gem.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-file-stat/src/file-stat.lo mruby-file-stat/src/file-stat.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-file-stat/src/file-stat.c  -fPIC -DPIC -o mruby-file-stat/src/.libs/file-stat.o
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast  -Wl,-z,relro -Wl,-z,now -o libmruby.la  ../mruby-source/src/array.lo ../mruby-source/src/backtrace.lo ../mruby-source/src/class.lo ../mruby-source/src/codedump.lo ../mruby-source/src/compar.lo ../mruby-source/src/crc.lo ../mruby-source/src/debug.lo ../mruby-source/src/dump.lo ../mruby-source/src/enum.lo ../mruby-source/src/error.lo ../mruby-source/src/etc.lo ../mruby-source/src/fmt_fp.lo ../mruby-source/src/gc.lo ../mruby-source/src/hash.lo ../mruby-source/src/init.lo ../mruby-source/src/kernel.lo ../mruby-source/src/load.lo ../mruby-source/src/numeric.lo ../mruby-source/src/object.lo ../mruby-source/src/pool.lo ../mruby-source/src/print.lo ../mruby-source/src/proc.lo ../mruby-source/src/range.lo ../mruby-source/src/state.lo ../mruby-source/src/string.lo ../mruby-source/src/symbol.lo ../mruby-source/src/variable.lo ../mruby-source/src/version.lo ../mruby-source/src/vm.lo ../mruby-source/mrbgems/mruby-compiler/core/codegen.lo ../mruby-source/mrbgems/mruby-sprintf/src/kernel.lo ../mruby-source/mrbgems/mruby-sprintf/src/sprintf.lo ../mruby-source/mrbgems/mruby-print/src/print.lo ../mruby-source/mrbgems/mruby-math/src/math.lo ../mruby-source/mrbgems/mruby-time/src/time.lo ../mruby-source/mrbgems/mruby-struct/src/struct.lo ../mruby-source/mrbgems/mruby-string-ext/src/string.lo ../mruby-source/mrbgems/mruby-numeric-ext/src/numeric_ext.lo ../mruby-source/mrbgems/mruby-array-ext/src/array.lo ../mruby-source/mrbgems/mruby-hash-ext/src/hash-ext.lo ../mruby-source/mrbgems/mruby-range-ext/src/range.lo ../mruby-source/mrbgems/mruby-proc-ext/src/proc.lo ../mruby-source/mrbgems/mruby-proc-ext/test/proc.lo ../mruby-source/mrbgems/mruby-symbol-ext/src/symbol.lo ../mruby-source/mrbgems/mruby-random/src/mt19937ar.lo ../mruby-source/mrbgems/mruby-random/src/random.lo ../mruby-source/mrbgems/mruby-object-ext/src/object.lo ../mruby-source/mrbgems/mruby-objectspace/src/mruby_objectspace.lo ../mruby-source/mrbgems/mruby-fiber/src/fiber.lo ../mruby-source/mrbgems/mruby-kernel-ext/src/kernel.lo mrblib.lo mrbgems_init.lo mruby-compiler/core/parse.lo mruby-onig-regexp/src/mruby_onig_regexp.lo mruby-env/src/env.lo mruby-io/src/file.lo mruby-io/src/file_test.lo mruby-io/src/io.lo mruby-io/src/mruby_io_gem.lo mruby-file-stat/src/file-stat.lo  -lz -ldl -lpthread -lm  
copying selected object files to avoid basename conflicts...
libtool: link: ln ../mruby-source/mrbgems/mruby-sprintf/src/.libs/kernel.o .libs/libmruby.lax/lt1-kernel.o || cp ../mruby-source/mrbgems/mruby-sprintf/src/.libs/kernel.o .libs/libmruby.lax/lt1-kernel.o
libtool: link: ln ../mruby-source/mrbgems/mruby-print/src/.libs/print.o .libs/libmruby.lax/lt2-print.o || cp ../mruby-source/mrbgems/mruby-print/src/.libs/print.o .libs/libmruby.lax/lt2-print.o
libtool: link: ln ../mruby-source/mrbgems/mruby-string-ext/src/.libs/string.o .libs/libmruby.lax/lt3-string.o || cp ../mruby-source/mrbgems/mruby-string-ext/src/.libs/string.o .libs/libmruby.lax/lt3-string.o
libtool: link: ln ../mruby-source/mrbgems/mruby-array-ext/src/.libs/array.o .libs/libmruby.lax/lt4-array.o || cp ../mruby-source/mrbgems/mruby-array-ext/src/.libs/array.o .libs/libmruby.lax/lt4-array.o
libtool: link: ln ../mruby-source/mrbgems/mruby-range-ext/src/.libs/range.o .libs/libmruby.lax/lt5-range.o || cp ../mruby-source/mrbgems/mruby-range-ext/src/.libs/range.o .libs/libmruby.lax/lt5-range.o
libtool: link: ln ../mruby-source/mrbgems/mruby-proc-ext/src/.libs/proc.o .libs/libmruby.lax/lt6-proc.o || cp ../mruby-source/mrbgems/mruby-proc-ext/src/.libs/proc.o .libs/libmruby.lax/lt6-proc.o
libtool: link: ln ../mruby-source/mrbgems/mruby-proc-ext/test/.libs/proc.o .libs/libmruby.lax/lt7-proc.o || cp ../mruby-source/mrbgems/mruby-proc-ext/test/.libs/proc.o .libs/libmruby.lax/lt7-proc.o
libtool: link: ln ../mruby-source/mrbgems/mruby-symbol-ext/src/.libs/symbol.o .libs/libmruby.lax/lt8-symbol.o || cp ../mruby-source/mrbgems/mruby-symbol-ext/src/.libs/symbol.o .libs/libmruby.lax/lt8-symbol.o
libtool: link: ln ../mruby-source/mrbgems/mruby-object-ext/src/.libs/object.o .libs/libmruby.lax/lt9-object.o || cp ../mruby-source/mrbgems/mruby-object-ext/src/.libs/object.o .libs/libmruby.lax/lt9-object.o
libtool: link: ln ../mruby-source/mrbgems/mruby-kernel-ext/src/.libs/kernel.o .libs/libmruby.lax/lt10-kernel.o || cp ../mruby-source/mrbgems/mruby-kernel-ext/src/.libs/kernel.o .libs/libmruby.lax/lt10-kernel.o
libtool: link: ar cru .libs/libmruby.a ../mruby-source/src/.libs/array.o ../mruby-source/src/.libs/backtrace.o ../mruby-source/src/.libs/class.o ../mruby-source/src/.libs/codedump.o ../mruby-source/src/.libs/compar.o ../mruby-source/src/.libs/crc.o ../mruby-source/src/.libs/debug.o ../mruby-source/src/.libs/dump.o ../mruby-source/src/.libs/enum.o ../mruby-source/src/.libs/error.o ../mruby-source/src/.libs/etc.o ../mruby-source/src/.libs/fmt_fp.o ../mruby-source/src/.libs/gc.o ../mruby-source/src/.libs/hash.o ../mruby-source/src/.libs/init.o ../mruby-source/src/.libs/kernel.o ../mruby-source/src/.libs/load.o ../mruby-source/src/.libs/numeric.o ../mruby-source/src/.libs/object.o ../mruby-source/src/.libs/pool.o ../mruby-source/src/.libs/print.o ../mruby-source/src/.libs/proc.o ../mruby-source/src/.libs/range.o ../mruby-source/src/.libs/state.o ../mruby-source/src/.libs/string.o ../mruby-source/src/.libs/symbol.o ../mruby-source/src/.libs/variable.o ../mruby-source/src/.libs/version.o ../mruby-source/src/.libs/vm.o ../mruby-source/mrbgems/mruby-compiler/core/.libs/codegen.o .libs/libmruby.lax/lt1-kernel.o ../mruby-source/mrbgems/mruby-sprintf/src/.libs/sprintf.o .libs/libmruby.lax/lt2-print.o ../mruby-source/mrbgems/mruby-math/src/.libs/math.o ../mruby-source/mrbgems/mruby-time/src/.libs/time.o ../mruby-source/mrbgems/mruby-struct/src/.libs/struct.o .libs/libmruby.lax/lt3-string.o ../mruby-source/mrbgems/mruby-numeric-ext/src/.libs/numeric_ext.o .libs/libmruby.lax/lt4-array.o ../mruby-source/mrbgems/mruby-hash-ext/src/.libs/hash-ext.o .libs/libmruby.lax/lt5-range.o .libs/libmruby.lax/lt6-proc.o .libs/libmruby.lax/lt7-proc.o .libs/libmruby.lax/lt8-symbol.o ../mruby-source/mrbgems/mruby-random/src/.libs/mt19937ar.o ../mruby-source/mrbgems/mruby-random/src/.libs/random.o .libs/libmruby.lax/lt9-object.o ../mruby-source/mrbgems/mruby-objectspace/src/.libs/mruby_objectspace.o ../mruby-source/mrbgems/mruby-fiber/src/.libs/fiber.o .libs/libmruby.lax/lt10-kernel.o .libs/mrblib.o .libs/mrbgems_init.o mruby-compiler/core/.libs/parse.o mruby-onig-regexp/src/.libs/mruby_onig_regexp.o mruby-env/src/.libs/env.o mruby-io/src/.libs/file.o mruby-io/src/.libs/file_test.o mruby-io/src/.libs/io.o mruby-io/src/.libs/mruby_io_gem.o mruby-file-stat/src/.libs/file-stat.o
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libmruby.a
libtool: link: rm -fr .libs/libmruby.lax
libtool: link: ( cd ".libs" && rm -f "libmruby.la" && ln -s "../libmruby.la" "libmruby.la" )
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mruby'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mruby'
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/vendor'
Making all in lib
make[3]: Entering directory '/<<PKGBUILDDIR>>/lib'
make  all-recursive
make[4]: Entering directory '/<<PKGBUILDDIR>>/lib'
Making all in dat
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/dat'
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o cursor-factory.lo cursor-factory.cpp
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o file-impl.lo file-impl.cpp
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o file.lo file.cpp
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o id-cursor.lo id-cursor.cpp
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c file-impl.cpp  -fPIC -DPIC -o .libs/file-impl.o
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c cursor-factory.cpp  -fPIC -DPIC -o .libs/cursor-factory.o
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c id-cursor.cpp  -fPIC -DPIC -o .libs/id-cursor.o
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c file.cpp  -fPIC -DPIC -o .libs/file.o
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o key-cursor.lo key-cursor.cpp
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o predictive-cursor.lo predictive-cursor.cpp
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o prefix-cursor.lo prefix-cursor.cpp
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o trie.lo trie.cpp
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c key-cursor.cpp  -fPIC -DPIC -o .libs/key-cursor.o
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c predictive-cursor.cpp  -fPIC -DPIC -o .libs/predictive-cursor.o
In file included from key-cursor.hpp:22:0,
                 from key-cursor.cpp:18:
vector.hpp: In instantiation of 'void grn::dat::Vector<T>::reserve(grn::dat::UInt32) [with T = unsigned int; grn::dat::UInt32 = unsigned int]':
vector.hpp:86:12:   required from 'void grn::dat::Vector<T>::push_back(const T&) [with T = unsigned int]'
key-cursor.cpp:142:32:   required from here
vector.hpp:138:18: warning: cast from 'char*' to 'unsigned int*' increases required alignment of target type [-Wcast-align]
     T *new_buf = reinterpret_cast<T *>(
                  ^~~~~~~~~~~~~~~~~~~~~~
         new (std::nothrow) char[sizeof(new_capacity) * new_capacity]);
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from predictive-cursor.hpp:22:0,
                 from predictive-cursor.cpp:18:
vector.hpp: In instantiation of 'void grn::dat::Vector<T>::reserve(grn::dat::UInt32) [with T = unsigned int; grn::dat::UInt32 = unsigned int]':
vector.hpp:86:12:   required from 'void grn::dat::Vector<T>::push_back(const T&) [with T = unsigned int]'
predictive-cursor.cpp:123:33:   required from here
vector.hpp:138:18: warning: cast from 'char*' to 'unsigned int*' increases required alignment of target type [-Wcast-align]
     T *new_buf = reinterpret_cast<T *>(
                  ^~~~~~~~~~~~~~~~~~~~~~
         new (std::nothrow) char[sizeof(new_capacity) * new_capacity]);
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c prefix-cursor.cpp  -fPIC -DPIC -o .libs/prefix-cursor.o
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c trie.cpp  -fPIC -DPIC -o .libs/trie.o
In file included from prefix-cursor.hpp:22:0,
                 from prefix-cursor.cpp:18:
vector.hpp: In instantiation of 'void grn::dat::Vector<T>::reserve(grn::dat::UInt32) [with T = unsigned int; grn::dat::UInt32 = unsigned int]':
vector.hpp:86:12:   required from 'void grn::dat::Vector<T>::push_back(const T&) [with T = unsigned int]'
prefix-cursor.cpp:114:38:   required from here
vector.hpp:138:18: warning: cast from 'char*' to 'unsigned int*' increases required alignment of target type [-Wcast-align]
     T *new_buf = reinterpret_cast<T *>(
                  ^~~~~~~~~~~~~~~~~~~~~~
         new (std::nothrow) char[sizeof(new_capacity) * new_capacity]);
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from trie.cpp:23:0:
vector.hpp: In instantiation of 'void grn::dat::Vector<T>::reserve(grn::dat::UInt32) [with T = unsigned int; grn::dat::UInt32 = unsigned int]':
vector.hpp:86:12:   required from 'void grn::dat::Vector<T>::push_back(const T&) [with T = unsigned int]'
trie.cpp:364:28:   required from here
vector.hpp:138:18: warning: cast from 'char*' to 'unsigned int*' increases required alignment of target type [-Wcast-align]
     T *new_buf = reinterpret_cast<T *>(
                  ^~~~~~~~~~~~~~~~~~~~~~
         new (std::nothrow) char[sizeof(new_capacity) * new_capacity]);
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates  -Wl,-z,relro -Wl,-z,now -o libgrndat.la  cursor-factory.lo file-impl.lo file.lo id-cursor.lo key-cursor.lo predictive-cursor.lo prefix-cursor.lo trie.lo  -lz -ldl -lpthread -lm  
libtool: link: ar cru .libs/libgrndat.a .libs/cursor-factory.o .libs/file-impl.o .libs/file.o .libs/id-cursor.o .libs/key-cursor.o .libs/predictive-cursor.o .libs/prefix-cursor.o .libs/trie.o 
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libgrndat.a
libtool: link: ( cd ".libs" && rm -f "libgrndat.la" && ln -s "../libgrndat.la" "libgrndat.la" )
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/dat'
Making all in mrb
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb'
Making all in scripts
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
Making all in command_line
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/command_line'
make[7]: Nothing to be done for 'all'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/command_line'
Making all in context
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/context'
make[7]: Nothing to be done for 'all'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/context'
Making all in expression_tree
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/expression_tree'
make[7]: Nothing to be done for 'all'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/expression_tree'
Making all in initialize
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/initialize'
make[7]: Nothing to be done for 'all'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/initialize'
Making all in logger
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/logger'
make[7]: Nothing to be done for 'all'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/logger'
Making all in query_logger
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/query_logger'
make[7]: Nothing to be done for 'all'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/query_logger'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[7]: Nothing to be done for 'all-am'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_accessor.lo mrb_accessor.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_array.lo mrb_array.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_bulk.lo mrb_bulk.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_cache.lo mrb_cache.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_accessor.c  -fPIC -DPIC -o .libs/mrb_accessor.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_cache.c  -fPIC -DPIC -o .libs/mrb_cache.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_array.c  -fPIC -DPIC -o .libs/mrb_array.o
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_ctx.h:21,
                 from ../grn_ctx_impl.h:22,
                 from mrb_bulk.c:19:
mrb_bulk.c: In function 'grn_mrb_value_from_bulk':
../../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
mrb_bulk.c:141:15: note: in expansion of macro 'GRN_INT16_VALUE'
       value = GRN_INT16_VALUE(bulk);
               ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
mrb_bulk.c:148:15: note: in expansion of macro 'GRN_UINT16_VALUE'
       value = GRN_UINT16_VALUE(bulk);
               ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
mrb_bulk.c:155:15: note: in expansion of macro 'GRN_INT32_VALUE'
       value = GRN_INT32_VALUE(bulk);
               ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
mrb_bulk.c:162:15: note: in expansion of macro 'GRN_UINT32_VALUE'
       value = GRN_UINT32_VALUE(bulk);
               ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
mrb_bulk.c:173:15: note: in expansion of macro 'GRN_INT64_VALUE'
       value = GRN_INT64_VALUE(bulk);
               ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
mrb_bulk.c:184:15: note: in expansion of macro 'GRN_UINT64_VALUE'
       value = GRN_UINT64_VALUE(bulk);
               ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
mrb_bulk.c:195:15: note: in expansion of macro 'GRN_FLOAT_VALUE'
       value = GRN_FLOAT_VALUE(bulk);
               ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
mrb_bulk.c:206:15: note: in expansion of macro 'GRN_TIME_VALUE'
       value = GRN_TIME_VALUE(bulk);
               ^~~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
mrb_bulk.c:248:39: note: in expansion of macro 'GRN_RECORD_VALUE'
         mrb_value_ = mrb_fixnum_value(GRN_RECORD_VALUE(bulk));
                                       ^~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_column.lo mrb_column.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_command.lo mrb_command.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_command_input.lo mrb_command_input.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_command.c  -fPIC -DPIC -o .libs/mrb_command.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_column.c  -fPIC -DPIC -o .libs/mrb_column.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_command_version.lo mrb_command_version.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_command_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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_command_version.c  -fPIC -DPIC -o .libs/mrb_command_version.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_config.lo mrb_config.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_content_type.lo mrb_content_type.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_converter.lo mrb_converter.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_ctx.lo mrb_ctx.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_config.c  -fPIC -DPIC -o .libs/mrb_config.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_content_type.c  -fPIC -DPIC -o .libs/mrb_content_type.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_converter.c  -fPIC -DPIC -o .libs/mrb_converter.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_ctx.c  -fPIC -DPIC -o .libs/mrb_ctx.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_database.lo mrb_database.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_double_array_trie.lo mrb_double_array_trie.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_database.c  -fPIC -DPIC -o .libs/mrb_database.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_double_array_trie.c  -fPIC -DPIC -o .libs/mrb_double_array_trie.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_error.lo mrb_error.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_error.c  -fPIC -DPIC -o .libs/mrb_error.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_eval_context.lo mrb_eval_context.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_expr.lo mrb_expr.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_eval_context.c  -fPIC -DPIC -o .libs/mrb_eval_context.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_fixed_size_column.lo mrb_fixed_size_column.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_expr.c  -fPIC -DPIC -o .libs/mrb_expr.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_hash_table.lo mrb_hash_table.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_fixed_size_column.c  -fPIC -DPIC -o .libs/mrb_fixed_size_column.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_id.lo mrb_id.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_hash_table.c  -fPIC -DPIC -o .libs/mrb_hash_table.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_id.c  -fPIC -DPIC -o .libs/mrb_id.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_indexable.lo mrb_indexable.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_index_column.lo mrb_index_column.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_indexable.c  -fPIC -DPIC -o .libs/mrb_indexable.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_index_cursor.lo mrb_index_cursor.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_index_column.c  -fPIC -DPIC -o .libs/mrb_index_column.o
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);
              ^
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_index_cursor.c  -fPIC -DPIC -o .libs/mrb_index_cursor.o
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_ctx.h:21,
                 from ../grn_ctx_impl.h:22,
                 from mrb_index_column.c:19:
mrb_index_column.c: In function 'mrb_grn_index_column_get_source_ids':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
mrb_index_column.c:79:24: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     grn_id source_id = GRN_RECORD_VALUE_AT(&source_ids, i);
                        ^~~~~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_logger.lo mrb_logger.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_object.lo mrb_object.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_object_flags.lo mrb_object_flags.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_logger.c  -fPIC -DPIC -o .libs/mrb_logger.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_object.c  -fPIC -DPIC -o .libs/mrb_object.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_object_flags.c  -fPIC -DPIC -o .libs/mrb_object_flags.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_operator.lo mrb_operator.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_options.lo mrb_options.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_operator.c  -fPIC -DPIC -o .libs/mrb_operator.o
mrb_object.c: In function 'object_hash':
mrb_object.c:161:37: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
   return mrb_fixnum_value((mrb_int)((uint64_t)object));
                                     ^
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_options.c  -fPIC -DPIC -o .libs/mrb_options.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_patricia_trie.lo mrb_patricia_trie.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_pointer.lo mrb_pointer.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_patricia_trie.c  -fPIC -DPIC -o .libs/mrb_patricia_trie.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_procedure.lo mrb_procedure.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_pointer.c  -fPIC -DPIC -o .libs/mrb_pointer.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_procedure.c  -fPIC -DPIC -o .libs/mrb_procedure.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_query_logger.lo mrb_query_logger.c
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_ctx.h:21,
                 from ../grn_ctx_impl.h:22,
                 from mrb_pointer.c:19:
mrb_pointer.c: In function 'mrb_grn_pointer_get_value':
../../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
mrb_pointer.c:57:42: note: in expansion of macro 'GRN_PTR_VALUE'
   return grn_mrb_value_from_grn_obj(mrb, GRN_PTR_VALUE(pointer));
                                          ^~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_query_logger.c  -fPIC -DPIC -o .libs/mrb_query_logger.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_record.lo mrb_record.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table.lo mrb_table.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table.c  -fPIC -DPIC -o .libs/mrb_table.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table_cursor.lo mrb_table_cursor.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table_cursor.c  -fPIC -DPIC -o .libs/mrb_table_cursor.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table_cursor_flags.lo mrb_table_cursor_flags.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table_cursor_flags.c  -fPIC -DPIC -o .libs/mrb_table_cursor_flags.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table_group_flags.lo mrb_table_group_flags.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table_group_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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table_sort_flags.lo mrb_table_sort_flags.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table_group_result.c  -fPIC -DPIC -o .libs/mrb_table_group_result.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table_sort_flags.c  -fPIC -DPIC -o .libs/mrb_table_sort_flags.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table_group_flags.c  -fPIC -DPIC -o .libs/mrb_table_group_flags.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table_sort_key.lo mrb_table_sort_key.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table_sort_key.c  -fPIC -DPIC -o .libs/mrb_table_sort_key.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_thread.lo mrb_thread.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_type.lo mrb_type.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_variable_size_column.lo mrb_variable_size_column.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_thread.c  -fPIC -DPIC -o .libs/mrb_thread.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_type.c  -fPIC -DPIC -o .libs/mrb_type.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_void.lo mrb_void.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_variable_size_column.c  -fPIC -DPIC -o .libs/mrb_variable_size_column.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_writer.lo mrb_writer.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_void.c  -fPIC -DPIC -o .libs/mrb_void.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_writer.c  -fPIC -DPIC -o .libs/mrb_writer.o
In file included from ../../include/groonga.h:40:0,
                 from ../grn.h:761,
                 from ../grn_ctx.h:21,
                 from ../grn_ctx_impl.h:22,
                 from mrb_writer.c:19:
mrb_writer.c: In function 'writer_write_table_columns':
../../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
mrb_writer.c:151:7: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
       GRN_OBJ_FORMAT_FIN(ctx, &format);
       ^~~~~~~~~~~~~~~~~~
../../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
mrb_writer.c:156:3: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
   GRN_OBJ_FORMAT_FIN(ctx, &format);
   ^~~~~~~~~~~~~~~~~~
mrb_writer.c: In function 'writer_write_table_records':
../../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
mrb_writer.c:202:7: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
       GRN_OBJ_FORMAT_FIN(ctx, &format);
       ^~~~~~~~~~~~~~~~~~
../../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
mrb_writer.c:207:3: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
   GRN_OBJ_FORMAT_FIN(ctx, &format);
   ^~~~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=link gcc -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o libgrnmrb.la  mrb_accessor.lo mrb_array.lo mrb_bulk.lo mrb_cache.lo mrb_column.lo mrb_command.lo mrb_command_input.lo mrb_command_version.lo mrb_config.lo mrb_content_type.lo mrb_converter.lo mrb_ctx.lo mrb_database.lo mrb_double_array_trie.lo mrb_error.lo mrb_eval_context.lo mrb_expr.lo mrb_fixed_size_column.lo mrb_hash_table.lo mrb_id.lo mrb_indexable.lo mrb_index_column.lo mrb_index_cursor.lo mrb_logger.lo mrb_object.lo mrb_object_flags.lo mrb_operator.lo mrb_options.lo mrb_patricia_trie.lo mrb_pointer.lo mrb_procedure.lo mrb_query_logger.lo mrb_record.lo mrb_table.lo mrb_table_cursor.lo mrb_table_cursor_flags.lo mrb_table_group_flags.lo mrb_table_group_result.lo mrb_table_sort_flags.lo mrb_table_sort_key.lo mrb_thread.lo mrb_type.lo mrb_variable_size_column.lo mrb_void.lo mrb_writer.lo  -lz -ldl -lpthread -lm  
libtool: link: ar cru .libs/libgrnmrb.a .libs/mrb_accessor.o .libs/mrb_array.o .libs/mrb_bulk.o .libs/mrb_cache.o .libs/mrb_column.o .libs/mrb_command.o .libs/mrb_command_input.o .libs/mrb_command_version.o .libs/mrb_config.o .libs/mrb_content_type.o .libs/mrb_converter.o .libs/mrb_ctx.o .libs/mrb_database.o .libs/mrb_double_array_trie.o .libs/mrb_error.o .libs/mrb_eval_context.o .libs/mrb_expr.o .libs/mrb_fixed_size_column.o .libs/mrb_hash_table.o .libs/mrb_id.o .libs/mrb_indexable.o .libs/mrb_index_column.o .libs/mrb_index_cursor.o .libs/mrb_logger.o .libs/mrb_object.o .libs/mrb_object_flags.o .libs/mrb_operator.o .libs/mrb_options.o .libs/mrb_patricia_trie.o .libs/mrb_pointer.o .libs/mrb_procedure.o .libs/mrb_query_logger.o .libs/mrb_record.o .libs/mrb_table.o .libs/mrb_table_cursor.o .libs/mrb_table_cursor_flags.o .libs/mrb_table_group_flags.o .libs/mrb_table_group_result.o .libs/mrb_table_sort_flags.o .libs/mrb_table_sort_key.o .libs/mrb_thread.o .libs/mrb_type.o .libs/mrb_variable_size_column.o .libs/mrb_void.o .libs/mrb_writer.o 
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libgrnmrb.a
libtool: link: ( cd ".libs" && rm -f "libgrnmrb.la" && ln -s "../libgrnmrb.la" "libgrnmrb.la" )
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb'
Making all in proc
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/proc'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_column.lo proc_column.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_config.lo proc_config.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_dump.lo proc_dump.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_fuzzy_search.lo proc_fuzzy_search.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_config.c  -fPIC -DPIC -o .libs/proc_config.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_dump.c  -fPIC -DPIC -o .libs/proc_dump.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_column.c  -fPIC -DPIC -o .libs/proc_column.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_fuzzy_search.c  -fPIC -DPIC -o .libs/proc_fuzzy_search.o
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_fuzzy_search.c:19:
proc_fuzzy_search.c: In function 'sequential_fuzzy_search':
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc_fuzzy_search.c:250:17: note: in expansion of macro 'GRN_RECORD_VALUE'
           rid = GRN_RECORD_VALUE(&value);
                 ^~~~~~~~~~~~~~~~
proc_fuzzy_search.c: In function 'selector_fuzzy_search':
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_fuzzy_search.c:330:22: note: in expansion of macro 'GRN_UINT32_VALUE'
       max_distance = GRN_UINT32_VALUE(options);
                      ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_fuzzy_search.c:351:28: note: in expansion of macro 'GRN_UINT32_VALUE'
             max_distance = GRN_UINT32_VALUE(value);
                            ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_fuzzy_search.c:353:29: note: in expansion of macro 'GRN_UINT32_VALUE'
             prefix_length = GRN_UINT32_VALUE(value);
                             ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_fuzzy_search.c:355:29: note: in expansion of macro 'GRN_UINT32_VALUE'
             max_expansion = GRN_UINT32_VALUE(value);
                             ^~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_lock.lo proc_lock.c
proc_dump.c: In function 'dump_index_column_sources':
proc_dump.c:242:16: warning: cast increases required alignment of target type [-Wcast-align]
   source_ids = (grn_id *)GRN_BULK_HEAD(&sources);
                ^
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_dump.c:19:
proc_dump.c: In function 'dump_records':
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_dump.c:523:14: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     column = GRN_PTR_VALUE_AT(&columns, i);
              ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_dump.c:555:16: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       column = GRN_PTR_VALUE_AT(&columns, j);
                ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_dump.c:634:14: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     column = GRN_PTR_VALUE_AT(&columns, i);
              ^~~~~~~~~~~~~~~~
proc_dump.c: In function 'dump_table':
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_dump.c:721:33: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         grn_obj *token_filter = GRN_PTR_VALUE_AT(token_filters, i);
                                 ^~~~~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_lock.c  -fPIC -DPIC -o .libs/proc_lock.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_object.lo proc_object.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_object_inspect.lo proc_object_inspect.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_object.c  -fPIC -DPIC -o .libs/proc_object.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_object_inspect.c  -fPIC -DPIC -o .libs/proc_object_inspect.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_object_list.lo proc_object_list.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_query.lo proc_query.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_object_list.c  -fPIC -DPIC -o .libs/proc_object_list.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_schema.lo proc_schema.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_query.c  -fPIC -DPIC -o .libs/proc_query.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_select.lo proc_select.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_schema.c  -fPIC -DPIC -o .libs/proc_schema.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_snippet.lo proc_snippet.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_select.c  -fPIC -DPIC -o .libs/proc_select.o
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_schema.c:19:
proc_schema.c: In function 'command_schema_output_tokenizers':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc_schema.c:290:20: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     tokenizer_id = GRN_RECORD_VALUE_AT(&tokenizer_ids, i);
                    ^~~~~~~~~~~~~~~~~~~
proc_schema.c: In function 'command_schema_output_normalizers':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc_schema.c:357:21: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     normalizer_id = GRN_RECORD_VALUE_AT(&normalizer_ids, i);
                     ^~~~~~~~~~~~~~~~~~~
proc_schema.c: In function 'command_schema_output_token_filters':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc_schema.c:424:23: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     token_filter_id = GRN_RECORD_VALUE_AT(&token_filter_ids, i);
                       ^~~~~~~~~~~~~~~~~~~
proc_schema.c: In function 'command_schema_table_output_token_filters':
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_schema.c:558:20: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     token_filter = GRN_PTR_VALUE_AT(&token_filters, i);
                    ^~~~~~~~~~~~~~~~
proc_schema.c: In function 'command_schema_table_command_collect_arguments':
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_schema.c:677:24: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         token_filter = GRN_PTR_VALUE_AT(&token_filters, i);
                        ^~~~~~~~~~~~~~~~
proc_schema.c: In function 'command_schema_column_output_sources':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc_schema.c:787:17: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     source_id = GRN_RECORD_VALUE_AT(&source_ids, i);
                 ^~~~~~~~~~~~~~~~~~~
proc_schema.c: In function 'command_schema_column_command_collect_arguments':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc_schema.c:952:21: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
         source_id = GRN_RECORD_VALUE_AT(&source_ids, i);
                     ^~~~~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_highlight.lo proc_highlight.c
proc_schema.c: In function 'command_schema_output_tables':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc_schema.c:1185:16: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     table_id = GRN_RECORD_VALUE_AT(&table_ids, i);
                ^~~~~~~~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_snippet.c  -fPIC -DPIC -o .libs/proc_snippet.o
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_snippet.c:19:
proc_snippet.c: In function 'func_snippet':
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_highlight.c  -fPIC -DPIC -o .libs/proc_highlight.o
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_snippet.c:136:19: note: in expansion of macro 'GRN_UINT32_VALUE'
           width = GRN_UINT32_VALUE(value);
                   ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_snippet.c:138:27: note: in expansion of macro 'GRN_UINT32_VALUE'
           max_n_results = GRN_UINT32_VALUE(value);
                           ^~~~~~~~~~~~~~~~
proc_snippet.c: In function 'func_snippet_html':
../../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
proc_snippet.c:271:19: note: in expansion of macro 'GRN_PTR_VALUE'
       condition = GRN_PTR_VALUE(condition_ptr);
                   ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
proc_snippet.c:280:16: note: in expansion of macro 'GRN_PTR_VALUE'
         snip = GRN_PTR_VALUE(snip_ptr);
                ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:40:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_select.c:19:
proc_select.c: In function 'grn_proc_select_format_init':
../../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
proc_select.c:1071:5: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
     GRN_OBJ_FORMAT_FIN(ctx, format);
     ^~~~~~~~~~~~~~~~~~
proc_select.c: In function 'grn_proc_select_format_fin':
../../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
proc_select.c:1083:3: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
   GRN_OBJ_FORMAT_FIN(ctx, format);
   ^~~~~~~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_select.c:19:
proc_select.c: In function 'grn_select_apply_adjuster_execute_ensure_factor':
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc_select.c:1462:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(factor_object);
            ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc_select.c:1470:16: note: in expansion of macro 'GRN_INT32_VALUE'
       factor = GRN_INT32_VALUE(&int32_object);
                ^~~~~~~~~~~~~~~
proc_select.c: In function 'grn_select_drilldown_execute':
proc_select.c:2008:5: warning: cast increases required alignment of target type [-Wcast-align]
     (grn_drilldown_data *)grn_hash_get_value_(ctx, drilldowns, id, NULL);
     ^
proc_select.c:2039:13: warning: cast increases required alignment of target type [-Wcast-align]
             (grn_slice_data *)grn_hash_get_value_(ctx, data->slices,
             ^
proc_select.c:2059:9: warning: cast increases required alignment of target type [-Wcast-align]
         (grn_drilldown_data *)grn_hash_get_value_(ctx,
         ^
proc_select.c: In function 'drilldown_tsort_visit':
proc_select.c:2219:9: warning: cast increases required alignment of target type [-Wcast-align]
         (grn_drilldown_data *)grn_hash_get_value_(ctx, drilldowns, id, NULL);
         ^
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_select.c:19:
proc_select.c: In function 'grn_select_drilldowns_execute':
../../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc_select.c:2323:10: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     id = GRN_RECORD_VALUE_AT(&tsorted_ids, i);
          ^~~~~~~~~~~~~~~~~~~
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:761,
                 from ../grn_proc.h:21,
                 from proc_highlight.c:19:
proc_highlight.c: In function 'func_highlight_html_create_keywords_table':
../../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
proc_highlight.c:418:17: note: in expansion of macro 'GRN_PTR_VALUE'
     condition = GRN_PTR_VALUE(condition_ptr);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_highlight.c:430:17: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       keyword = GRN_PTR_VALUE_AT(&current_keywords, i);
                 ^~~~~~~~~~~~~~~~
proc_highlight.c: In function 'func_highlight_html':
../../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
proc_highlight.c:462:18: note: in expansion of macro 'GRN_PTR_VALUE'
       keywords = GRN_PTR_VALUE(keywords_ptr);
                  ^~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_table.lo proc_table.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_tokenize.lo proc_tokenize.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_table.c  -fPIC -DPIC -o .libs/proc_table.o
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_table.c:19:
proc_table.c: In function 'command_table_list':
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc_table.c:506:22: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *table = GRN_PTR_VALUE_AT(&tables, i);
                      ^~~~~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_tokenize.c  -fPIC -DPIC -o .libs/proc_tokenize.o
proc_tokenize.c: In function 'output_tokens':
proc_tokenize.c:90:14: warning: cast increases required alignment of target type [-Wcast-align]
     token = ((tokenize_token *)(GRN_BULK_HEAD(tokens))) + i;
              ^
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_tokenize.c:19:
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_tokenize.c:109:33: note: in expansion of macro 'GRN_UINT32_VALUE'
       grn_ctx_output_int64(ctx, GRN_UINT32_VALUE(&estimated_size));
                                 ^~~~~~~~~~~~~~~~
proc_tokenize.c: In function 'tokenize':
proc_tokenize.c:223:22: warning: cast increases required alignment of target type [-Wcast-align]
     current_token = ((tokenize_token *)(GRN_BULK_CURR(tokens))) - 1;
                      ^
/bin/bash ../../libtool  --tag=CC   --mode=link gcc -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o libgrnproc.la  proc_column.lo proc_config.lo proc_dump.lo proc_fuzzy_search.lo proc_lock.lo proc_object.lo proc_object_inspect.lo proc_object_list.lo proc_query.lo proc_schema.lo proc_select.lo proc_snippet.lo proc_highlight.lo proc_table.lo proc_tokenize.lo  -lz -ldl -lpthread -lm  
libtool: link: ar cru .libs/libgrnproc.a .libs/proc_column.o .libs/proc_config.o .libs/proc_dump.o .libs/proc_fuzzy_search.o .libs/proc_lock.o .libs/proc_object.o .libs/proc_object_inspect.o .libs/proc_object_list.o .libs/proc_query.o .libs/proc_schema.o .libs/proc_select.o .libs/proc_snippet.o .libs/proc_highlight.o .libs/proc_table.o .libs/proc_tokenize.o 
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libgrnproc.a
libtool: link: ( cd ".libs" && rm -f "libgrnproc.la" && ln -s "../libgrnproc.la" "libgrnproc.la" )
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/proc'
Making all in ts
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/ts'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_buf.lo ts_buf.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_cursor.lo ts_cursor.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_expr.lo ts_expr.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_expr_builder.lo ts_expr_builder.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_cursor.c  -fPIC -DPIC -o .libs/ts_cursor.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_buf.c  -fPIC -DPIC -o .libs/ts_buf.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_expr_builder.c  -fPIC -DPIC -o .libs/ts_expr_builder.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_expr.c  -fPIC -DPIC -o .libs/ts_expr.o
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ts_expr_builder.h:21,
                 from ts_expr_builder.c:19:
ts_expr_builder.c: In function 'grn_ts_expr_builder_push_bulk':
../../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_INT16_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:262:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(INT16, INT, int)
     ^
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_INT32_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:263:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(INT32, INT, int)
     ^
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_INT64_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:264:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(INT64, INT, int)
     ^
../../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_UINT16_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:266:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(UINT16, INT, int)
     ^
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_UINT32_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:267:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(UINT32, INT, int)
     ^
../../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_UINT64_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:269:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(UINT64, INT, int)
     ^
../../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_FLOAT_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:270:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(FLOAT, FLOAT, float)
     ^
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
ts_expr_builder.c:249:42: note: in expansion of macro 'GRN_TIME_VALUE'
     value.as_ ## kind = (grn_ts_ ## kind)GRN_ ## TYPE ## _VALUE(obj);\
                                          ^~~~
ts_expr_builder.c:271:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_BULK_CASE(TIME, TIME, time)
     ^
../../include/groonga/groonga.h:1476:25: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *_val = (grn_geo_point *)GRN_BULK_HEAD(obj);\
                         ^
ts_expr_builder.c:282:7: note: in expansion of macro 'GRN_GEO_POINT_VALUE'
       GRN_GEO_POINT_VALUE(obj, value.as_geo.latitude, value.as_geo.longitude);
       ^~~~~~~~~~~~~~~~~~~
ts_expr_builder.c: In function 'grn_ts_expr_builder_push_uvector':
../../include/groonga/groonga.h:1484:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE_AT(obj,offset) (((signed short *)GRN_BULK_HEAD(obj))[offset])
                                          ^
ts_expr_builder.c:318:16: note: in expansion of macro 'GRN_INT16_VALUE_AT'
       buf[i] = GRN_ ## TYPE ##_VALUE_AT(obj, i);\
                ^~~~
ts_expr_builder.c:336:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST(INT16, INT, int)
     ^
../../include/groonga/groonga.h:1486:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
ts_expr_builder.c:318:16: note: in expansion of macro 'GRN_INT32_VALUE_AT'
       buf[i] = GRN_ ## TYPE ##_VALUE_AT(obj, i);\
                ^~~~
ts_expr_builder.c:337:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST(INT32, INT, int)
     ^
ts_expr_builder.c:295:40: warning: cast increases required alignment of target type [-Wcast-align]
     value.as_ ## kind ## _vector.ptr = (grn_ts_ ## kind *)GRN_BULK_HEAD(obj);\
                                        ^
ts_expr_builder.c:338:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE(INT64, INT, int)
     ^
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ts_expr_builder.h:21,
                 from ts_expr_builder.c:19:
../../include/groonga/groonga.h:1485:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE_AT(obj,offset) (((unsigned short *)GRN_BULK_HEAD(obj))[offset])
                                           ^
ts_expr_builder.c:318:16: note: in expansion of macro 'GRN_UINT16_VALUE_AT'
       buf[i] = GRN_ ## TYPE ##_VALUE_AT(obj, i);\
                ^~~~
ts_expr_builder.c:340:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST(UINT16, INT, int)
     ^
../../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
ts_expr_builder.c:318:16: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       buf[i] = GRN_ ## TYPE ##_VALUE_AT(obj, i);\
                ^~~~
ts_expr_builder.c:341:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE_WITH_TYPECAST(UINT32, INT, int)
     ^
ts_expr_builder.c:295:40: warning: cast increases required alignment of target type [-Wcast-align]
     value.as_ ## kind ## _vector.ptr = (grn_ts_ ## kind *)GRN_BULK_HEAD(obj);\
                                        ^
ts_expr_builder.c:342:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE(UINT64, INT, int)
     ^
ts_expr_builder.c:295:40: warning: cast increases required alignment of target type [-Wcast-align]
     value.as_ ## kind ## _vector.ptr = (grn_ts_ ## kind *)GRN_BULK_HEAD(obj);\
                                        ^
ts_expr_builder.c:343:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE(TIME, TIME, time)
     ^
ts_expr_builder.c:295:40: warning: cast increases required alignment of target type [-Wcast-align]
     value.as_ ## kind ## _vector.ptr = (grn_ts_ ## kind *)GRN_BULK_HEAD(obj);\
                                        ^
ts_expr_builder.c:344:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE(TOKYO_GEO_POINT, GEO, geo)
     ^
ts_expr_builder.c:295:40: warning: cast increases required alignment of target type [-Wcast-align]
     value.as_ ## kind ## _vector.ptr = (grn_ts_ ## kind *)GRN_BULK_HEAD(obj);\
                                        ^
ts_expr_builder.c:345:5: note: in expansion of macro 'GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE'
     GRN_TS_EXPR_BUILDER_PUSH_UVECTOR_CASE(WGS84_GEO_POINT, GEO, geo)
     ^
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_expr_node.lo ts_expr_node.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_expr_parser.lo ts_expr_parser.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_op.lo ts_op.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_expr_node.c  -fPIC -DPIC -o .libs/ts_expr_node.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_expr_parser.c  -fPIC -DPIC -o .libs/ts_expr_parser.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_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;
                                              ^
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)
         ^
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_plan.lo ts_plan.c
ts_expr_node.c: In function 'grn_ts_expr_node_close':
ts_expr_node.c:5170:21: warning: cast increases required alignment of target type [-Wcast-align]
     type ## _node = (grn_ts_expr_ ## type ## _node *)node;\
                     ^
ts_expr_node.c:5182:5: note: in expansion of macro 'GRN_TS_EXPR_NODE_CLOSE_CASE'
     GRN_TS_EXPR_NODE_CLOSE_CASE(CONST, const)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
ts_expr_node.c: In function 'grn_ts_expr_node_evaluate':
ts_expr_node.c:5251:21: warning: cast increases required alignment of target type [-Wcast-align]
     type ## _node = (grn_ts_expr_ ## type ## _node *)node;\
                     ^
ts_expr_node.c:5264:5: note: in expansion of macro 'GRN_TS_EXPR_NODE_EVALUATE_CASE'
     GRN_TS_EXPR_NODE_EVALUATE_CASE(CONST, const)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ts_expr_node.c: In function 'grn_ts_expr_node_filter':
ts_expr_node.c:5318:21: warning: cast increases required alignment of target type [-Wcast-align]
     type ## _node = (grn_ts_expr_ ## type ## _node *)node;\
                     ^
ts_expr_node.c:5334:5: note: in expansion of macro 'GRN_TS_EXPR_NODE_FILTER_CASE'
     GRN_TS_EXPR_NODE_FILTER_CASE(CONST, const)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
ts_expr_node.c: In function 'grn_ts_expr_node_adjust':
ts_expr_node.c:5349:21: warning: cast increases required alignment of target type [-Wcast-align]
     type ## _node = (grn_ts_expr_ ## type ## _node *)node;\
                     ^
ts_expr_node.c:5364:5: note: in expansion of macro 'GRN_TS_EXPR_NODE_ADJUST_CASE'
     GRN_TS_EXPR_NODE_ADJUST_CASE(CONST, const)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_plan.c  -fPIC -DPIC -o .libs/ts_plan.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_sorter.lo ts_sorter.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_sorter.c  -fPIC -DPIC -o .libs/ts_sorter.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_str.lo ts_str.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_str.c  -fPIC -DPIC -o .libs/ts_str.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source   -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_util.lo ts_util.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_util.c  -fPIC -DPIC -o .libs/ts_util.o
/bin/bash ../../libtool  --tag=CC   --mode=link gcc -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -Wl,-z,relro -Wl,-z,now -o libgrnts.la  ts_buf.lo ts_cursor.lo ts_expr.lo ts_expr_builder.lo ts_expr_node.lo ts_expr_parser.lo ts_op.lo ts_plan.lo ts_sorter.lo ts_str.lo ts_util.lo  -lz -ldl -lpthread -lm  
libtool: link: ar cru .libs/libgrnts.a .libs/ts_buf.o .libs/ts_cursor.o .libs/ts_expr.o .libs/ts_expr_builder.o .libs/ts_expr_node.o .libs/ts_expr_parser.o .libs/ts_op.o .libs/ts_plan.o .libs/ts_sorter.o .libs/ts_str.o .libs/ts_util.o 
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libgrnts.a
libtool: link: ( cd ".libs" && rm -f "libgrnts.la" && ln -s "../libgrnts.la" "libgrnts.la" )
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/ts'
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib'
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o alloc.lo alloc.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o cache.lo cache.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o column.lo column.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o com.lo com.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c com.c  -fPIC -DPIC -o .libs/com.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c 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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c alloc.c  -fPIC -DPIC -o .libs/alloc.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c cache.c  -fPIC -DPIC -o .libs/cache.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o command.lo command.c
com.c: In function 'grn_msg_open':
com.c:131:21: warning: cast increases required alignment of target type [-Wcast-align]
   if (old && (msg = (grn_msg *)grn_com_queue_deque(ctx, old))) {
                     ^
com.c: In function 'grn_msg_open_for_reply':
com.c:152:18: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *req = (grn_msg *)query, *msg = NULL;
                  ^
com.c:153:21: warning: cast increases required alignment of target type [-Wcast-align]
   if (req && (msg = (grn_msg *)grn_msg_open(ctx, req->u.peer, old))) {
                     ^
com.c: In function 'grn_msg_close':
com.c:164:18: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *msg = (grn_msg *)obj;
                  ^
com.c: In function 'grn_msg_set_property':
com.c:173:30: warning: cast increases required alignment of target type [-Wcast-align]
   grn_com_header *header = &((grn_msg *)obj)->header;
                              ^
com.c: In function 'grn_msg_send':
com.c:184:16: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *m = (grn_msg *)msg;
                ^
com.c: In function 'grn_com_receiver':
com.c:529:20: warning: cast increases required alignment of target type [-Wcast-align]
     grn_msg *msg = (grn_msg *)grn_msg_open(ctx, com, &ev->recv_old);
                    ^
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);
                ^
cache.c: In function 'grn_cache_open':
cache.c:63:17: warning: cast increases required alignment of target type [-Wcast-align]
   cache->next = (grn_cache_entry *)cache;
                 ^
cache.c:64:17: warning: cast increases required alignment of target type [-Wcast-align]
   cache->prev = (grn_cache_entry *)cache;
                 ^
cache.c: In function 'grn_cache_fetch':
cache.c:194:30: warning: cast increases required alignment of target type [-Wcast-align]
       grn_cache_entry *ce0 = (grn_cache_entry *)cache;
                              ^
cache.c: In function 'grn_cache_update':
cache.c:254:30: warning: cast increases required alignment of target type [-Wcast-align]
       grn_cache_entry *ce0 = (grn_cache_entry *)cache;
                              ^
cache.c: In function 'grn_cache_expire':
cache.c:275:26: warning: cast increases required alignment of target type [-Wcast-align]
   grn_cache_entry *ce0 = (grn_cache_entry *)cache;
                          ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o config.lo config.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c command.c  -fPIC -DPIC -o .libs/command.o
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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ctx.lo ctx.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ctx_impl_mrb.lo ctx_impl_mrb.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c 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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ctx.c  -fPIC -DPIC -o .libs/ctx.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ctx_impl_mrb.c  -fPIC -DPIC -o .libs/ctx_impl_mrb.o
ctx.c: In function 'grn_ctx_loader_clear':
ctx.c:170:16: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj *v = (grn_obj *)(GRN_BULK_HEAD(&loader->values));
                ^
ctx.c:171:17: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj *ve = (grn_obj *)(GRN_BULK_CURR(&loader->values));
                 ^
ctx.c:172:17: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **p = (grn_obj **)GRN_BULK_HEAD(&loader->columns);
                 ^
ctx.c: In function 'grn_ctx_fin':
ctx.c:429:16: warning: cast increases required alignment of target type [-Wcast-align]
       spaces = (grn_obj *)GRN_BULK_HEAD(stack);
                ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from ctx.c:19:
ctx.c: In function 'grn_get_ctype':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
ctx.c:881:10: note: in expansion of macro 'GRN_INT32_VALUE'
     ct = GRN_INT32_VALUE(var);
          ^~~~~~~~~~~~~~~
ctx.c: In function 'grn_ctx_use':
ctx.c:1506:26: warning: cast increases required alignment of target type [-Wcast-align]
         ctx->encoding = *(grn_encoding *)GRN_BULK_HEAD(&buf);
                          ^
/bin/bash ../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o dat.lo dat.cpp
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o db.lo db.c
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c dat.cpp  -fPIC -DPIC -o .libs/dat.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c db.c  -fPIC -DPIC -o .libs/db.o
In file included from grn_db.h:24:0,
                 from grn_config.h:21,
                 from db.c:19:
db.c: In function 'calc_rec_size':
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
db.c:997:30: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
     *value_size = (uintptr_t)GRN_RSET_SUBRECS_NTH((((grn_rset_recinfo *)0)->subrecs),
                              ^~~~~~~~~~~~~~~~~~~~
db.c: In function 'grn_table_get_subrecs':
db.c:1326:10: warning: cast increases required alignment of target type [-Wcast-align]
     ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, table, id, &value_size);
          ^
db.c:1342:31: warning: cast increases required alignment of target type [-Wcast-align]
           scorebuf[count] = *((double *)psubrec);
                               ^
db.c:1346:32: warning: cast increases required alignment of target type [-Wcast-align]
           subrecbuf[count] = *((grn_id *)psubrec);
                                ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'grn_obj_default_set_value_hook':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:1461:30: note: in expansion of macro 'GRN_UINT32_VALUE'
                              GRN_UINT32_VALUE(id),
                              ^~~~~~~~~~~~~~~~
db.c: In function 'delete_reference_records_in_index':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
db.c:1925:17: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
     source_id = GRN_UINT32_VALUE_AT(&source_ids, i);
                 ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:1947:23: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *source = GRN_PTR_VALUE_AT(&sources, posting->sid - 1);
                       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
db.c:1968:37: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
               grn_id reference_id = GRN_RECORD_VALUE_AT(&value, i);
                                     ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:2016:25: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       grn_obj *source = GRN_PTR_VALUE_AT(&sources, i);
                         ^~~~~~~~~~~~~~~~
In file included from grn_db.h:24:0,
                 from grn_config.h:21,
                 from db.c:19:
db.c: In function 'subrecs_push':
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
db.c:2400:10: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
     c2 = GRN_RSET_SUBRECS_NTH(subrecs,size,n2);
          ^~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:21:0,
                 from grn.h:761,
                 from db.c:18:
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
../include/groonga/portability.h:31:44: note: in definition of macro 'grn_memcpy'
 #  define grn_memcpy(dest, src, n) memcpy((dest), (src), (n))
                                            ^~~~
grn_rset.h:57:15: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
   (grn_memcpy(GRN_RSET_SUBRECS_NTH(subrecs, size, n), src, GRN_RSET_SUBREC_SIZE(size)))
               ^~~~~~~~~~~~~~~~~~~~
db.c:2402:5: note: in expansion of macro 'GRN_RSET_SUBRECS_COPY'
     GRN_RSET_SUBRECS_COPY(subrecs,size,n,c2);
     ^~~~~~~~~~~~~~~~~~~~~
db.c:2406:5: warning: cast increases required alignment of target type [-Wcast-align]
   *((double *)v) = score;
     ^
In file included from grn_db.h:24:0,
                 from grn_config.h:21,
                 from db.c:19:
db.c: In function 'subrecs_replace_min':
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
db.c:2419:27: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
     c1 = n1 < n_subrecs ? GRN_RSET_SUBRECS_NTH(subrecs,size,n1) : NULL;
                           ^~~~~~~~~~~~~~~~~~~~
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
db.c:2420:27: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
     c2 = n2 < n_subrecs ? GRN_RSET_SUBRECS_NTH(subrecs,size,n2) : NULL;
                           ^~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:21:0,
                 from grn.h:761,
                 from db.c:18:
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
../include/groonga/portability.h:31:44: note: in definition of macro 'grn_memcpy'
 #  define grn_memcpy(dest, src, n) memcpy((dest), (src), (n))
                                            ^~~~
grn_rset.h:57:15: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
   (grn_memcpy(GRN_RSET_SUBRECS_NTH(subrecs, size, n), src, GRN_RSET_SUBREC_SIZE(size)))
               ^~~~~~~~~~~~~~~~~~~~
db.c:2425:9: note: in expansion of macro 'GRN_RSET_SUBRECS_COPY'
         GRN_RSET_SUBRECS_COPY(subrecs,size,n,c2);
         ^~~~~~~~~~~~~~~~~~~~~
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
../include/groonga/portability.h:31:44: note: in definition of macro 'grn_memcpy'
 #  define grn_memcpy(dest, src, n) memcpy((dest), (src), (n))
                                            ^~~~
grn_rset.h:57:15: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
   (grn_memcpy(GRN_RSET_SUBRECS_NTH(subrecs, size, n), src, GRN_RSET_SUBREC_SIZE(size)))
               ^~~~~~~~~~~~~~~~~~~~
db.c:2428:9: note: in expansion of macro 'GRN_RSET_SUBRECS_COPY'
         GRN_RSET_SUBRECS_COPY(subrecs,size,n,c1);
         ^~~~~~~~~~~~~~~~~~~~~
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
../include/groonga/portability.h:31:44: note: in definition of macro 'grn_memcpy'
 #  define grn_memcpy(dest, src, n) memcpy((dest), (src), (n))
                                            ^~~~
grn_rset.h:57:15: note: in expansion of macro 'GRN_RSET_SUBRECS_NTH'
   (grn_memcpy(GRN_RSET_SUBRECS_NTH(subrecs, size, n), src, GRN_RSET_SUBREC_SIZE(size)))
               ^~~~~~~~~~~~~~~~~~~~
db.c:2433:9: note: in expansion of macro 'GRN_RSET_SUBRECS_COPY'
         GRN_RSET_SUBRECS_COPY(subrecs,size,n,c2);
         ^~~~~~~~~~~~~~~~~~~~~
In file included from grn_db.h:24:0,
                 from grn_config.h:21,
                 from db.c:19:
db.c: In function 'grn_table_add_subrec_inline':
db.c:2459:45: warning: cast increases required alignment of target type [-Wcast-align]
           if (GRN_RSET_SUBRECS_CMP(score, *((double *)(ri->subrecs)), dir) > 0) {
                                             ^
grn_rset.h:53:48: note: in definition of macro 'GRN_RSET_SUBRECS_CMP'
 #define GRN_RSET_SUBRECS_CMP(a,b,dir) (((a) - (b))*(dir))
                                                ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'grn_accessor_resolve_one_index_column':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
db.c:3170:19: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       source_id = GRN_UINT32_VALUE_AT(&source_ids, i);
                   ^~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:35:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
../include/groonga/hash.h:81:7: note: in definition of macro 'GRN_HASH_EACH'
       block\
       ^~~~~
db.c:3226:27: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
         add_posting.rid = GRN_RECORD_VALUE_AT(&column_value, i);
                           ^~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'grn_accessor_resolve':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:3451:25: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     a = (grn_accessor *)GRN_PTR_VALUE_AT(&accessor_stack, i - 1);
                         ^~~~~~~~~~~~~~~~
db.c: In function 'grn_obj_search_column_index':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:3681:22: note: in expansion of macro 'GRN_RECORD_VALUE'
         grn_id tid = GRN_RECORD_VALUE(query);
                      ^~~~~~~~~~~~~~~~
db.c: In function 'accelerated_table_group':
db.c:3834:21: warning: cast increases required alignment of target type [-Wcast-align]
               id_ = (grn_id *)_grn_table_key(ctx, table, id, &key_size);
                     ^
db.c:3866:21: warning: cast increases required alignment of target type [-Wcast-align]
               id_ = (grn_id *)_grn_table_key(ctx, table, id, &key_size);
                     ^
db.c: In function 'grn_table_group_single_key_records':
db.c:3941:29: warning: cast increases required alignment of target type [-Wcast-align]
               grn_id id = *((grn_id *)element);
                             ^
db.c:3983:26: warning: cast increases required alignment of target type [-Wcast-align]
           if ((!idp || *((grn_id *)GRN_BULK_HEAD(&bulk))) &&
                          ^
db.c: In function 'grn_table_group_with_range_gap':
db.c:4075:21: warning: cast increases required alignment of target type [-Wcast-align]
               id_ = (grn_id *)_grn_table_key(ctx, table, id, &key_size);
                     ^
db.c:4116:21: warning: cast increases required alignment of target type [-Wcast-align]
               id_ = (grn_id *)_grn_table_key(ctx, table, id, &key_size);
                     ^
db.c: In function 'grn_table_group_multi_keys_vector_record':
db.c:4276:15: warning: cast increases required alignment of target type [-Wcast-align]
         ids = (grn_id *)GRN_BULK_HEAD(key_buffer);
               ^
db.c: In function 'grn_uvector_get_element':
db.c:5519:21: warning: cast increases required alignment of target type [-Wcast-align]
     entries_start = (const weight_uvector_entry *)GRN_BULK_HEAD(uvector);
                     ^
db.c:5520:19: warning: cast increases required alignment of target type [-Wcast-align]
     entries_end = (const weight_uvector_entry *)GRN_BULK_CURR(uvector);
                   ^
db.c:5533:17: warning: cast increases required alignment of target type [-Wcast-align]
     ids_start = (const grn_id *)GRN_BULK_HEAD(uvector);
                 ^
db.c:5534:15: warning: cast increases required alignment of target type [-Wcast-align]
     ids_end = (const grn_id *)GRN_BULK_CURR(uvector);
               ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'grn_obj_cast_bool':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6196:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();
     ^~~~~~~~~~
db.c: In function 'grn_obj_cast_record':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1379:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
db.c:6306:31: note: in expansion of macro 'GRN_RECORD_VALUE'
     GRN_RECORD_SET(ctx, dest, GRN_RECORD_VALUE(src));
                               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6331:7: note: in expansion of macro 'GRN_RECORD_VALUE'
   if (GRN_RECORD_VALUE(src) == GRN_ID_NIL) {
       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1379:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
db.c:6332:31: note: in expansion of macro 'GRN_RECORD_VALUE'
     GRN_RECORD_SET(ctx, dest, GRN_RECORD_VALUE(src));
                               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6336:40: note: in expansion of macro 'GRN_RECORD_VALUE'
   key = _grn_table_key(ctx, src_table, GRN_RECORD_VALUE(src), &key_size);
                                        ^~~~~~~~~~~~~~~~
db.c: In function 'grn_obj_cast':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6356:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT8_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6359:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT8_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1338:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6205:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6205:23: note: in expansion of macro 'GRN_INT16_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6226:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6226:23: note: in expansion of macro 'GRN_INT16_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_INT16_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6240:23: note: in expansion of macro 'GRN_INT16_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6362:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1338:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6205:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6205:23: note: in expansion of macro 'GRN_UINT16_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6226:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6226:23: note: in expansion of macro 'GRN_UINT16_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_UINT16_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6240:23: note: in expansion of macro 'GRN_UINT16_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6365:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1338:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6205:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6205:23: note: in expansion of macro 'GRN_INT32_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6226:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6226:23: note: in expansion of macro 'GRN_INT32_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_INT32_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6240:23: note: in expansion of macro 'GRN_INT32_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1338:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6205:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6205:23: note: in expansion of macro 'GRN_UINT32_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6226:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6226:23: note: in expansion of macro 'GRN_UINT32_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_UINT32_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6240:23: note: in expansion of macro 'GRN_UINT32_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1338:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6205:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6205:23: note: in expansion of macro 'GRN_INT64_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6226:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6226:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_INT64_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6240:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1338:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6205:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6205:23: note: in expansion of macro 'GRN_INT64_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o dump.lo dump.c
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6226:5: note: in expansion of macro 'TIME2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6226:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'TIME2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_INT64_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6240:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6377:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1338:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6205:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6205:23: note: in expansion of macro 'GRN_UINT64_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6226:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6226:23: note: in expansion of macro 'GRN_UINT64_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_UINT64_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6240:23: note: in expansion of macro 'GRN_UINT64_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6273:19: note: in definition of macro 'FLOAT2BOOL'
   double value_ = value;\
                   ^~~~~
db.c:6205:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1342:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6208:29: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1346:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6211:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6214:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6217:31: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6220:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6223:31: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6282:26: note: in definition of macro 'FLOAT2TIME'
   int64_t usec = llround(value * GRN_TIME_USEC_PER_SEC);\
                          ^~~~~
db.c:6226:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6229:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6232:31: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6235:5: note: in expansion of macro 'FLOAT2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6235:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6240:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6247:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6129:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6533:7: note: in expansion of macro 'SRC2RECORD'
       SRC2RECORD();
       ^~~~~~~~~~
../include/groonga/groonga.h:1476:25: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *_val = (grn_geo_point *)GRN_BULK_HEAD(obj);\
                         ^
db.c:6544:7: note: in expansion of macro 'GRN_GEO_POINT_VALUE'
       GRN_GEO_POINT_VALUE(src, latitude, longitude);
       ^~~~~~~~~~~~~~~~~~~
db.c: In function 'grn_accessor_get_value_':
db.c:6642:33: warning: cast increases required alignment of target type [-Wcast-align]
         value = (const char *)&((grn_rset_recinfo *)value)->score;
                                 ^
db.c:6648:33: warning: cast increases required alignment of target type [-Wcast-align]
         value = (const char *)&((grn_rset_recinfo *)value)->n_subrecs;
                                 ^
db.c:6656:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6665:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6674:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6683:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6703:14: warning: cast increases required alignment of target type [-Wcast-align]
       id = *((grn_id *)value);
              ^
db.c: In function 'grn_accessor_get_value':
db.c:6765:32: warning: cast increases required alignment of target type [-Wcast-align]
         grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                ^
db.c:6774:32: warning: cast increases required alignment of target type [-Wcast-align]
         grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                ^
db.c:6783:32: warning: cast increases required alignment of target type [-Wcast-align]
         grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                ^
db.c:6794:32: warning: cast increases required alignment of target type [-Wcast-align]
         grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                ^
db.c:6805:32: warning: cast increases required alignment of target type [-Wcast-align]
         grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                ^
db.c:6816:32: warning: cast increases required alignment of target type [-Wcast-align]
         grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                ^
db.c: In function 'grn_accessor_set_value':
db.c:6886:18: warning: cast increases required alignment of target type [-Wcast-align]
             ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                  ^
db.c:6890:23: warning: cast increases required alignment of target type [-Wcast-align]
             if ((ri = (grn_rset_recinfo *) grn_obj_get_value_(ctx, a->obj, id, &size))) {
                       ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6893:29: note: in expansion of macro 'GRN_FLOAT_VALUE'
                 ri->score = GRN_FLOAT_VALUE(value);
                             ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6898:29: note: in expansion of macro 'GRN_FLOAT_VALUE'
                 ri->score = GRN_FLOAT_VALUE(&buf);
                             ^~~~~~~~~~~~~~~
db.c:6908:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                                  ^
db.c:6915:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                                  ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6917:55: note: in expansion of macro 'GRN_INT64_VALUE'
             grn_rset_recinfo_set_max(ctx, ri, a->obj, GRN_INT64_VALUE(value));
                                                       ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6923:40: note: in expansion of macro 'GRN_INT64_VALUE'
                                        GRN_INT64_VALUE(&value_int64));
                                        ^~~~~~~~~~~~~~~
db.c:6932:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                                  ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6934:55: note: in expansion of macro 'GRN_INT64_VALUE'
             grn_rset_recinfo_set_min(ctx, ri, a->obj, GRN_INT64_VALUE(value));
                                                       ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6940:40: note: in expansion of macro 'GRN_INT64_VALUE'
                                        GRN_INT64_VALUE(&value_int64));
                                        ^~~~~~~~~~~~~~~
db.c:6949:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                                  ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6951:55: note: in expansion of macro 'GRN_INT64_VALUE'
             grn_rset_recinfo_set_sum(ctx, ri, a->obj, GRN_INT64_VALUE(value));
                                                       ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6957:40: note: in expansion of macro 'GRN_INT64_VALUE'
                                        GRN_INT64_VALUE(&value_int64));
                                        ^~~~~~~~~~~~~~~
db.c:6966:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                                  ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6968:55: note: in expansion of macro 'GRN_FLOAT_VALUE'
             grn_rset_recinfo_set_avg(ctx, ri, a->obj, GRN_FLOAT_VALUE(value));
                                                       ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6974:40: note: in expansion of macro 'GRN_FLOAT_VALUE'
                                        GRN_FLOAT_VALUE(&value_float));
                                        ^~~~~~~~~~~~~~~
db.c: In function 'grn_obj_set_value_column_var_size_vector_uvector':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:7378:21: note: in expansion of macro 'GRN_RECORD_VALUE'
         casted_id = GRN_RECORD_VALUE(&casted_record);
                     ^~~~~~~~~~~~~~~~
db.c: In function 'grn_token_filters_pack':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:8334:29: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *token_filter = GRN_PTR_VALUE_AT(token_filters, i);
                             ^~~~~~~~~~~~~~~~
db.c: In function 'grn_obj_set_info_source_validate':
db.c:8498:16: warning: cast increases required alignment of target type [-Wcast-align]
   source_ids = (grn_id *)GRN_BULK_HEAD(value);
                ^
db.c: In function 'grn_obj_set_info_source_log':
db.c:8580:16: warning: cast increases required alignment of target type [-Wcast-align]
   grn_id *vp = (grn_id *)GRN_BULK_HEAD(value);
                ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'grn_obj_set_info_token_filters':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:8684:29: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *token_filter = GRN_PTR_VALUE_AT(token_filters, i);
                             ^~~~~~~~~~~~~~~~
db.c: In function 'remove_reference_tables':
db.c:9298:20: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id id = ((grn_id *)GRN_BULK_HEAD(&not_opened_ids))[i];
                    ^
db.c: In function 'is_removable_table':
db.c:9424:20: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id id = ((grn_id *)GRN_BULK_HEAD(&not_opened_ids))[i];
                    ^
db.c: In function 'grn_ctx_at':
db.c:10261:19: warning: cast increases required alignment of target type [-Wcast-align]
         tmp_obj = (grn_obj **)grn_pat_get_value_(ctx,
                   ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'grn_pvector_fin':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:10562:26: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       grn_obj *element = GRN_PTR_VALUE_AT(obj, n_elements - i - 1);
                          ^~~~~~~~~~~~~~~~
db.c: In function 'grn_obj_close':
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
db.c:10651:30: note: in expansion of macro 'GRN_PTR_VALUE'
           grn_obj_close(ctx, GRN_PTR_VALUE(obj));
                              ^~~~~~~~~~~~~
db.c: In function 'grn_obj_reinit':
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
db.c:10838:30: note: in expansion of macro 'GRN_PTR_VALUE'
           grn_obj_close(ctx, GRN_PTR_VALUE(obj));
                              ^~~~~~~~~~~~~
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:10848:30: note: in expansion of macro 'GRN_PTR_VALUE_AT'
           grn_obj *element = GRN_PTR_VALUE_AT(obj, i);
                              ^~~~~~~~~~~~~~~~
db.c: In function 'compare_reference':
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11587:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11587:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11590:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11590:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11593:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11593:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11599:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11599:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11602:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11602:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11605:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11605:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:11610:24: warning: cast increases required alignment of target type [-Wcast-align]
           float va = *((float *)(ap));
                        ^
db.c:11611:24: warning: cast increases required alignment of target type [-Wcast-align]
           float vb = *((float *)(bp));
                        ^
db.c:11623:25: warning: cast increases required alignment of target type [-Wcast-align]
           double va = *((double *)(ap));
                         ^
db.c:11624:25: warning: cast increases required alignment of target type [-Wcast-align]
           double vb = *((double *)(bp));
                         ^
db.c: In function 'compare_value':
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11823:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11823:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11826:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11826:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11829:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11829:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11835:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11835:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11838:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11838:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11529:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11841:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:11530:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11841:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:11846:24: warning: cast increases required alignment of target type [-Wcast-align]
           float va = *((float *)(ap));
                        ^
db.c:11847:24: warning: cast increases required alignment of target type [-Wcast-align]
           float vb = *((float *)(bp));
                        ^
db.c:11859:25: warning: cast increases required alignment of target type [-Wcast-align]
           double va = *((double *)(ap));
                         ^
db.c:11860:25: warning: cast increases required alignment of target type [-Wcast-align]
           double vb = *((double *)(bp));
                         ^
db.c: In function 'values_add':
db.c:13568:11: warning: cast increases required alignment of target type [-Wcast-align]
     res = (grn_obj *)(GRN_TEXT_VALUE(&loader->values) + curr_size);
           ^
db.c:13573:11: warning: cast increases required alignment of target type [-Wcast-align]
     res = (grn_obj *)(GRN_TEXT_VALUE(&loader->values) + curr_size);
           ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'values_next':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13586:14: note: in expansion of macro 'GRN_UINT32_VALUE'
     value += GRN_UINT32_VALUE(value);
              ^~~~~~~~~~~~~~~~
db.c: In function 'set_vector':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13620:11: note: in expansion of macro 'GRN_UINT32_VALUE'
   int n = GRN_UINT32_VALUE(vector);
           ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1517:38: note: in definition of macro 'GRN_UINT32_PUT'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:13641:35: note: in expansion of macro 'GRN_RECORD_VALUE'
         GRN_UINT32_PUT(ctx, &buf, GRN_RECORD_VALUE(element));
                                   ^~~~~~~~~~~~~~~~
db.c: In function 'set_weight_vector':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13718:9: note: in expansion of macro 'GRN_UINT32_VALUE'
     n = GRN_UINT32_VALUE(index_value);
         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13739:30: note: in expansion of macro 'GRN_UINT32_VALUE'
                              GRN_UINT32_VALUE(&weight_buffer),
                              ^~~~~~~~~~~~~~~~
db.c: In function 'parse_id_value':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13794:12: note: in expansion of macro 'GRN_UINT32_VALUE'
     return GRN_UINT32_VALUE(value);
            ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:13796:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(value);
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13813:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&casted_value);
              ^~~~~~~~~~~~~~~~
db.c: In function 'bracket_close':
db.c:13832:10: warning: cast increases required alignment of target type [-Wcast-align]
   cols = (grn_obj **)GRN_BULK_HEAD(&loader->columns);
          ^
In file included from grn_config.h:21:0,
                 from db.c:19:
grn_db.h:419:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(uint32_t *)(GRN_BULK_CURR(obj));\
              ^
db.c:13834:3: note: in expansion of macro 'GRN_UINT32_POP'
   GRN_UINT32_POP(&loader->level, begin);
   ^~~~~~~~~~~~~~
db.c:13835:11: warning: cast increases required alignment of target type [-Wcast-align]
   value = (grn_obj *)GRN_TEXT_VALUE(&loader->values) + begin;
           ^
db.c:13836:15: warning: cast increases required alignment of target type [-Wcast-align]
   value_end = (grn_obj *)GRN_TEXT_VALUE(&loader->values) + loader->values_size;
               ^
In file included from grn_config.h:21:0,
                 from db.c:19:
db.c: In function 'brace_close':
grn_db.h:419:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(uint32_t *)(GRN_BULK_CURR(obj));\
              ^
db.c:14024:3: note: in expansion of macro 'GRN_UINT32_POP'
   GRN_UINT32_POP(&loader->level, begin);
   ^~~~~~~~~~~~~~
db.c:14025:17: warning: cast increases required alignment of target type [-Wcast-align]
   value_begin = (grn_obj *)GRN_TEXT_VALUE(&loader->values) + begin;
                 ^
db.c:14026:15: warning: cast increases required alignment of target type [-Wcast-align]
   value_end = (grn_obj *)GRN_TEXT_VALUE(&loader->values) + loader->values_size;
               ^
db.c: In function 'grn_ctx_push_temporary_open_space':
db.c:14966:12: warning: cast increases required alignment of target type [-Wcast-align]
   space = ((grn_obj *)GRN_BULK_CURR(stack)) - 1;
            ^
db.c: In function 'grn_ctx_pop_temporary_open_space':
db.c:14996:14: warning: cast increases required alignment of target type [-Wcast-align]
     space = ((grn_obj *)GRN_BULK_CURR(stack)) - 1;
              ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from db.c:18:
db.c: In function 'grn_ctx_merge_temporary_open_space':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
db.c:15026:26: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       grn_obj *element = GRN_PTR_VALUE_AT(space, i);
                          ^~~~~~~~~~~~~~~~
db.c:15037:14: warning: cast increases required alignment of target type [-Wcast-align]
     space = ((grn_obj *)GRN_BULK_CURR(stack)) - 1;
              ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c dump.c  -fPIC -DPIC -o .libs/dump.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts.lo ts.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o type.lo type.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts.c  -fPIC -DPIC -o .libs/ts.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c type.c  -fPIC -DPIC -o .libs/type.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o error.lo error.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o expr.lo expr.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c error.c  -fPIC -DPIC -o .libs/error.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o expr_code.lo expr_code.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c expr.c  -fPIC -DPIC -o .libs/expr.o
expr.c: In function 'grn_expr_dfi_pop':
expr.c:486:11: warning: cast increases required alignment of target type [-Wcast-align]
     dfi = (grn_expr_dfi *)GRN_BULK_CURR(&expr->dfi);
           ^
expr.c: In function 'grn_expr_close':
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
expr.c:617:5: note: in expansion of macro 'GRN_PTR_POP'
     GRN_PTR_POP(&e->objs, obj);
     ^~~~~~~~~~~
expr.c: In function 'grn_expr_get_var_by_offset':
expr.c:728:21: warning: cast increases required alignment of target type [-Wcast-align]
   if (vars) { res = (grn_obj *)grn_hash_get_value_(ctx, vars, offset + 1, NULL); }
                     ^
expr.c: In function 'grn_expr_append_obj':
expr.c:838:26: warning: cast increases required alignment of target type [-Wcast-align]
     grn_expr_dfi *dfis = (grn_expr_dfi *)GRN_BULK_HEAD(&e->dfi);
                          ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:760:17: note: in expansion of macro 'GRN_INT32_VALUE'
         value = GRN_INT32_VALUE(x);                             \
                 ^~~~~~~~~~~~~~~
expr.c:1068:9: note: in expansion of macro 'APPEND_UNARY_MINUS_OP'
         APPEND_UNARY_MINUS_OP(e);
         ^~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:773:17: note: in expansion of macro 'GRN_UINT32_VALUE'
         value = GRN_UINT32_VALUE(x);                            \
                 ^~~~~~~~~~~~~~~~
expr.c:1068:9: note: in expansion of macro 'APPEND_UNARY_MINUS_OP'
         APPEND_UNARY_MINUS_OP(e);
         ^~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:786:30: note: in expansion of macro 'GRN_INT64_VALUE'
       GRN_INT64_SET(ctx, x, -GRN_INT64_VALUE(x));               \
                              ^~~~~~~~~~~~~~~
expr.c:1068:9: note: in expansion of macro 'APPEND_UNARY_MINUS_OP'
         APPEND_UNARY_MINUS_OP(e);
         ^~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:789:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
       GRN_FLOAT_SET(ctx, x, -GRN_FLOAT_VALUE(x));               \
                              ^~~~~~~~~~~~~~~
expr.c:1068:9: note: in expansion of macro 'APPEND_UNARY_MINUS_OP'
         APPEND_UNARY_MINUS_OP(e);
         ^~~~~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_expr_exec_get_member_vector':
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2404:12: note: in expansion of macro 'GRN_PTR_VALUE'
   column = GRN_PTR_VALUE(column_and_record_id);
            ^~~~~~~~~~~~~
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
expr.c:2405:30: note: in expansion of macro 'GRN_PTR_VALUE_AT'
   record_id = *((grn_id *)(&(GRN_PTR_VALUE_AT(column_and_record_id, 1))));
                              ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2409:7: note: in expansion of macro 'GRN_UINT32_VALUE'
   i = GRN_UINT32_VALUE(index);
       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
expr.c:2416:15: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
       value = GRN_RECORD_VALUE_AT(&values, i);
               ^~~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_expr_exec':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1517:38: note: in definition of macro 'GRN_UINT32_PUT'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:2567:38: note: in expansion of macro 'GRN_RECORD_VALUE'
             GRN_UINT32_PUT(ctx, res, GRN_RECORD_VALUE(rec));
                                      ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2617:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           obj = GRN_OBJ_RESOLVE(ctx, obj);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2617:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           obj = GRN_OBJ_RESOLVE(ctx, obj);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2632:24: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value_type = GRN_OBJ_RESOLVE(ctx, value_type);
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2632:24: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value_type = GRN_OBJ_RESOLVE(ctx, value_type);
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2634:22: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           key_type = GRN_OBJ_RESOLVE(ctx, key_type);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2634:22: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           key_type = GRN_OBJ_RESOLVE(ctx, key_type);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2636:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           flags = GRN_OBJ_RESOLVE(ctx, flags);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2636:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           flags = GRN_OBJ_RESOLVE(ctx, flags);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2638:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2638:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2640:40: note: in expansion of macro 'GRN_UINT32_VALUE'
                                  NULL, GRN_UINT32_VALUE(flags),
                                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2650:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2650:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2652:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2652:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2655:72: note: in expansion of macro 'GRN_INT32_VALUE'
             res = grn_expr_get_var_by_offset(ctx, expr, (unsigned int) GRN_INT32_VALUE(name));
                                                                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2658:72: note: in expansion of macro 'GRN_UINT32_VALUE'
             res = grn_expr_get_var_by_offset(ctx, expr, (unsigned int) GRN_UINT32_VALUE(name));
                                                                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2661:72: note: in expansion of macro 'GRN_INT64_VALUE'
             res = grn_expr_get_var_by_offset(ctx, expr, (unsigned int) GRN_INT64_VALUE(name));
                                                                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2664:72: note: in expansion of macro 'GRN_UINT64_VALUE'
             res = grn_expr_get_var_by_offset(ctx, expr, (unsigned int) GRN_UINT64_VALUE(name));
                                                                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2687:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value = GRN_OBJ_RESOLVE(ctx, value);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2687:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value = GRN_OBJ_RESOLVE(ctx, value);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2692:28: note: in expansion of macro 'GRN_PTR_VALUE'
             grn_obj *col = GRN_PTR_VALUE(var);
                            ^~~~~~~~~~~~~
expr.c:2693:27: warning: cast increases required alignment of target type [-Wcast-align]
             grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));
                           ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o geo.lo geo.c
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2703:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c expr_code.c  -fPIC -DPIC -o .libs/expr_code.o
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o hash.lo hash.c
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c geo.c  -fPIC -DPIC -o .libs/geo.o
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from grn_geo.h:21:0,
                 from geo.c:18:
geo.c: In function 'compute_min_and_max':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn.h:697:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
geo.c:126:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((uint8_t *)geo_min, geo_key_min, sizeof(grn_geo_point));
     ^~~~~~~~
grn.h:698:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
geo.c:126:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((uint8_t *)geo_min, geo_key_min, sizeof(grn_geo_point));
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn.h:697:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
geo.c:129:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((uint8_t *)geo_max, geo_key_max, sizeof(grn_geo_point));
     ^~~~~~~~
grn.h:698:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
geo.c:129:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((uint8_t *)geo_max, geo_key_max, sizeof(grn_geo_point));
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
geo.c: In function 'grn_geo_table_sort':
geo.c:737:37: warning: cast increases required alignment of target type [-Wcast-align]
         grn_geo_point *base_point = (grn_geo_point *)GRN_BULK_HEAD(geo_point);
                                     ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from geo.c:18:0:
geo.c: In function 'grn_geo_select_in_circle':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:899:12: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
   center = GRN_GEO_POINT_VALUE_RAW(center_point);
            ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2759:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_geo.h:21,
                 from geo.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:914:9: note: in expansion of macro 'GRN_INT32_VALUE'
     d = GRN_INT32_VALUE(distance);
         ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
geo.c:919:9: note: in expansion of macro 'GRN_UINT32_VALUE'
     d = GRN_UINT32_VALUE(distance);
         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:924:9: note: in expansion of macro 'GRN_INT64_VALUE'
     d = GRN_INT64_VALUE(distance);
         ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
geo.c:929:9: note: in expansion of macro 'GRN_UINT64_VALUE'
     d = GRN_UINT64_VALUE(distance);
         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:934:9: note: in expansion of macro 'GRN_FLOAT_VALUE'
     d = GRN_FLOAT_VALUE(distance);
         ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476:25: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *_val = (grn_geo_point *)GRN_BULK_HEAD(obj);\
                         ^
geo.c:951:5: note: in expansion of macro 'GRN_GEO_POINT_VALUE'
     GRN_GEO_POINT_VALUE(point_on_circle,
     ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from geo.c:18:0:
geo.c: In function 'in_rectangle_data_fill':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:1085:20: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
   data->top_left = GRN_GEO_POINT_VALUE_RAW(top_left_point);
                    ^~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:1100:24: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
   data->bottom_right = GRN_GEO_POINT_VALUE_RAW(bottom_right_point);
                        ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from grn_geo.h:21:0,
                 from geo.c:18:
geo.c: In function 'grn_geo_cursor_entry_next_push':
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn.h:697:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
geo.c:1556:3: note: in expansion of macro 'grn_ntog'
   grn_ntog((uint8_t*)(&entry_base), entry->key, sizeof(grn_geo_point));
   ^~~~~~~~
grn.h:698:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
geo.c:1556:3: note: in expansion of macro 'grn_ntog'
   grn_ntog((uint8_t*)(&entry_base), entry->key, sizeof(grn_geo_point));
   ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
geo.c: In function 'grn_geo_cursor_each':
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn.h:697:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
geo.c:1847:7: note: in expansion of macro 'grn_ntog'
       grn_ntog((uint8_t*)(&entry_base), entry.key, sizeof(grn_geo_point));
       ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn.h:698:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
geo.c:1847:7: note: in expansion of macro 'grn_ntog'
       grn_ntog((uint8_t*)(&entry_base), entry.key, sizeof(grn_geo_point));
       ^~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from geo.c:18:0:
geo.c: In function 'grn_geo_in_circle':
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2128:27: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                           GRN_GEO_POINT_VALUE_RAW(point),
                           ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2129:27: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                           GRN_GEO_POINT_VALUE_RAW(center));
                           ^~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_geo.h:21,
                 from geo.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:2132:16: note: in expansion of macro 'GRN_INT32_VALUE'
       r = d <= GRN_INT32_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
geo.c:2135:16: note: in expansion of macro 'GRN_UINT32_VALUE'
       r = d <= GRN_UINT32_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:2138:16: note: in expansion of macro 'GRN_INT64_VALUE'
       r = d <= GRN_INT64_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
geo.c:2141:16: note: in expansion of macro 'GRN_UINT64_VALUE'
       r = d <= GRN_UINT64_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:2144:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
       r = d <= GRN_FLOAT_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~
In file included from geo.c:18:0:
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2157:34: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                  GRN_GEO_POINT_VALUE_RAW(radius_or_point),
                                  ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2158:34: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                  GRN_GEO_POINT_VALUE_RAW(center));
                                  ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
geo.c: In function 'grn_geo_in_rectangle':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2219:34: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                  GRN_GEO_POINT_VALUE_RAW(point),
                                  ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2220:34: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                  GRN_GEO_POINT_VALUE_RAW(top_left),
                                  ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2221:34: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                  GRN_GEO_POINT_VALUE_RAW(bottom_right));
                                  ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
geo.c: In function 'grn_geo_distance_rectangle':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2650:38: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                      GRN_GEO_POINT_VALUE_RAW(point1),
                                      ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2651:38: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                      GRN_GEO_POINT_VALUE_RAW(point2));
                                      ^~~~~~~~~~~~~~~~~~~~~~~
geo.c: In function 'grn_geo_distance_sphere':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2677:37: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                     GRN_GEO_POINT_VALUE_RAW(point1),
                                     ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2678:37: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                     GRN_GEO_POINT_VALUE_RAW(point2));
                                     ^~~~~~~~~~~~~~~~~~~~~~~
geo.c: In function 'grn_geo_distance_ellipsoid':
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2705:48: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                                GRN_GEO_POINT_VALUE_RAW(point1),
                                                ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2706:48: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                                GRN_GEO_POINT_VALUE_RAW(point2));
                                                ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2709:48: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                                GRN_GEO_POINT_VALUE_RAW(point1),
                                                ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2710:48: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                                GRN_GEO_POINT_VALUE_RAW(point2));
                                                ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c hash.c  -fPIC -DPIC -o .libs/hash.o
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c: In function 'grn_hash_entry_put_key':
hash.c:1669:8: warning: cast increases required alignment of target type [-Wcast-align]
       *(uint32_t *)entry->plain_entry.key = hash_value;
        ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c: In function 'get_key':
hash.c:1732:44: warning: cast increases required alignment of target type [-Wcast-align]
   return grn_hash_entry_get_key(ctx, hash, (grn_hash_entry *)n);
                                            ^
hash.c: In function 'get_value':
hash.c:1738:46: warning: cast increases required alignment of target type [-Wcast-align]
   return grn_hash_entry_get_value(ctx, hash, (grn_hash_entry *)n);
                                              ^
hash.c: In function 'put_key':
hash.c:1745:44: warning: cast increases required alignment of target type [-Wcast-align]
   return grn_hash_entry_put_key(ctx, hash, (grn_hash_entry *)n, h, key, len);
                                            ^
hash.c: In function 'match_key':
hash.c:1752:48: warning: cast increases required alignment of target type [-Wcast-align]
   return grn_hash_entry_compare_key(ctx, hash, (grn_hash_entry *)ee,
                                                ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c: In function 'pack':
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c: In function 'part':
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3099:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3099:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3102:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3102:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3106:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c: In function 'pack_val32':
hash.c:3236:10: warning: cast increases required alignment of target type [-Wcast-align]
     : (*((int32_t *)((byte *)((arg->flags & GRN_TABLE_SORT_BY_VALUE)\
          ^
hash.c:3268:3: note: in expansion of macro 'PREPARE_VAL32'
   PREPARE_VAL32(id, c, &cr);
   ^~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c:3236:10: warning: cast increases required alignment of target type [-Wcast-align]
     : (*((int32_t *)((byte *)((arg->flags & GRN_TABLE_SORT_BY_VALUE)\
          ^
hash.c:3278:5: note: in expansion of macro 'PREPARE_VAL32'
     PREPARE_VAL32(id, e, &er);
     ^~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2830:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2844:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2900:41: note: in expansion of macro 'GRN_RECORD_VALUE'
             grn_obj_get_value(ctx, col, GRN_RECORD_VALUE(rec), res);
                                         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2910:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2910:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2912:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2912:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2914:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           query = GRN_OBJ_RESOLVE(ctx, query);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2914:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           query = GRN_OBJ_RESOLVE(ctx, query);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2916:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           index = GRN_OBJ_RESOLVE(ctx, index);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2916:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           index = GRN_OBJ_RESOLVE(ctx, index);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2918:40: note: in expansion of macro 'GRN_UINT32_VALUE'
                          (grn_operator)GRN_UINT32_VALUE(op), NULL);
                                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2926:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2926:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2928:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2928:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2930:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2930:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2932:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2932:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1369:3: note: in definition of macro 'WITH_SPSAVE'
   block\
   ^~~~~
expr.c:2934:67: note: in expansion of macro 'GRN_UINT32_VALUE'
             grn_table_select(ctx, table, expr, res, (grn_operator)GRN_UINT32_VALUE(op));
                                                                   ^~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2944:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2944:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2946:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2946:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2948:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           limit = GRN_OBJ_RESOLVE(ctx, limit);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2948:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           limit = GRN_OBJ_RESOLVE(ctx, limit);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2950:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2950:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1369:3: note: in definition of macro 'WITH_SPSAVE'
   block\
   ^~~~~
expr.c:2973:47: note: in expansion of macro 'GRN_INT32_VALUE'
                 grn_table_sort(ctx, table, 0, GRN_INT32_VALUE(limit), res, keys, n_keys);
                                               ^~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2988:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2988:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2990:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2990:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2992:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2992:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3041:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3041:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3043:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           str = GRN_OBJ_RESOLVE(ctx, str);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3043:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           str = GRN_OBJ_RESOLVE(ctx, str);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:301:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3045:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3045:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
In file included from ../include/groonga.h:40:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
expr.c:3051:11: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
           GRN_OBJ_FORMAT_FIN(ctx, &format);
           ^~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3240:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3242:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3244:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3246:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3261:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3263:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3265:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3267:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3282:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3284:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3286:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3288:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3307:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3309:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3311:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3313:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3333:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3335:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3337:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3339:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3346:22: note: in expansion of macro 'GRN_INT32_VALUE'
             r = d <= GRN_INT32_VALUE(value);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3349:22: note: in expansion of macro 'GRN_FLOAT_VALUE'
             r = d <= GRN_FLOAT_VALUE(value);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3367:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3369:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3371:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3373:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3375:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1384:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3377:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3396:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln0 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3398:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la0 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3400:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln1 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3402:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la1 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3404:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln2 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3406:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la2 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3408:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln3 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3410:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la3 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3419:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2182:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2190:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2199:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2207:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2216:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2224:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2232:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2251:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3449:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2259:5: note: in definition of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3462:20: note: in expansion of macro 'GRN_INT64_VALUE'
               x_ = GRN_INT64_VALUE(res);
                    ^~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3468:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3487:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2028:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2040:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2052:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2064:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1988:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2088:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2090:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2090:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2100:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1988:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2112:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1988:19: note: in expansion of macro 'FLOAT_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3505:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2005:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2017:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2028:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2029:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2040:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2041:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2052:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2053:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2064:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1988:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2065:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2077:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2088:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2090:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1988:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2089:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2090:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2100:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1988:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2101:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2112:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1914:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1922:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1938:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1946:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1954:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1962:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1970:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1988:19: note: in expansion of macro 'FLOAT_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1988:49: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2113:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2142:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3517:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2182:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2190:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2199:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2207:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2216:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2224:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2232:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2251:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3529:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2259:5: note: in definition of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:1551:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                 \
        ^~~~~~~~~~~~~~~
expr.c:3534:11: note: in expansion of macro 'TEXT_UNARY_ARITHMETIC_OPERATION'
           TEXT_UNARY_ARITHMETIC_OPERATION(~),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o id.lo id.c
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1535:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3546:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(|),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1539:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3546:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(|),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1535:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3558:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(^),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3549:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1539:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3558:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(^),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c id.c  -fPIC -DPIC -o .libs/id.o
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1535:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3570:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(&),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1539:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3570:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(&),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ii.lo ii.c
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1535:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3582:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(<<),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1539:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3582:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(<<),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1535:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3594:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(>>),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3585:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1539:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3594:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(>>),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ii.c  -fPIC -DPIC -o .libs/ii.o
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1741:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1755:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1769:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1771:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1783:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1785:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1786:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1797:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1811:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:3615:18: note: in expansion of macro 'GRN_INT64_VALUE'
             x_ = GRN_INT64_VALUE(res);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1825:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:3619:18: note: in expansion of macro 'GRN_INT64_VALUE'
             y_ = GRN_INT64_VALUE(res);
                  ^~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2295:9: note: in expansion of macro 'GRN_PTR_VALUE'
   col = GRN_PTR_VALUE(var);                                             \
         ^~~~~~~~~~~~~
expr.c:3626:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE, 1, GRN_OBJ_INCR);
         ^
expr.c:2296:10: warning: cast increases required alignment of target type [-Wcast-align]
   rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));            \
          ^
expr.c:3626:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE, 1, GRN_OBJ_INCR);
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2295:9: note: in expansion of macro 'GRN_PTR_VALUE'
   col = GRN_PTR_VALUE(var);                                             \
         ^~~~~~~~~~~~~
expr.c:3629:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE, 1, GRN_OBJ_DECR);
         ^
expr.c:2296:10: warning: cast increases required alignment of target type [-Wcast-align]
   rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));            \
          ^
expr.c:3629:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE, 1, GRN_OBJ_DECR);
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2295:9: note: in expansion of macro 'GRN_PTR_VALUE'
   col = GRN_PTR_VALUE(var);                                             \
         ^~~~~~~~~~~~~
expr.c:3632:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE_POST, 1, GRN_OBJ_INCR);
         ^
expr.c:2296:10: warning: cast increases required alignment of target type [-Wcast-align]
   rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));            \
          ^
expr.c:3632:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE_POST, 1, GRN_OBJ_INCR);
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2295:9: note: in expansion of macro 'GRN_PTR_VALUE'
   col = GRN_PTR_VALUE(var);                                             \
         ^~~~~~~~~~~~~
expr.c:3635:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE_POST, 1, GRN_OBJ_DECR);
         ^
expr.c:2296:10: warning: cast increases required alignment of target type [-Wcast-align]
   rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));            \
          ^
expr.c:3635:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE_POST, 1, GRN_OBJ_DECR);
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
expr.c: In function 'scan_info_put_index':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
expr.c:4011:21: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj **pi = &GRN_PTR_VALUE_AT(&si->index, ni);
                     ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1486:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
expr.c:4015:26: note: in expansion of macro 'GRN_INT32_VALUE_AT'
           int32_t *pw = &GRN_INT32_VALUE_AT(&si->wv, (ni - i) * 2);
                          ^~~~~~~~~~~~~~~~~~
expr.c: In function 'get_weight':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4038:14: note: in expansion of macro 'GRN_INT32_VALUE'
       return GRN_INT32_VALUE(ec[1].value);
              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4044:18: note: in expansion of macro 'GRN_INT32_VALUE'
         weight = GRN_INT32_VALUE(&weight_buffer);
                  ^~~~~~~~~~~~~~~
expr.c: In function 'scan_info_build_match_expr_codes_find_index':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4274:18: note: in expansion of macro 'GRN_INT32_VALUE'
           *sid = GRN_INT32_VALUE(ec[1].value) + 1;
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:4276:18: note: in expansion of macro 'GRN_UINT32_VALUE'
           *sid = GRN_UINT32_VALUE(ec[1].value) + 1;
                  ^~~~~~~~~~~~~~~~
expr.c: In function 'scan_info_build_match':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4529:30: note: in expansion of macro 'GRN_INT32_VALUE'
           si->max_interval = GRN_INT32_VALUE(*p);
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4538:38: note: in expansion of macro 'GRN_INT32_VALUE'
           si->similarity_threshold = GRN_INT32_VALUE(*p);
                                      ^~~~~~~~~~~~~~~
ii.c: In function 'buffer_open':
ii.c:2163:19: warning: cast increases required alignment of target type [-Wcast-align]
     if (b) { *b = (buffer *)p; }
                   ^
ii.c:2164:21: warning: cast increases required alignment of target type [-Wcast-align]
     if (bt) { *bt = (buffer_term *)(p + LPOS(pos)); }
                     ^
expr.c: In function 'grn_scan_info_build_full':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4891:46: note: in expansion of macro 'GRN_INT32_VALUE'
         grn_scan_info_set_start_position(si, GRN_INT32_VALUE(&buffer));
                                              ^~~~~~~~~~~~~~~
expr.c: In function 'exec_result_to_score':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:5137:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(score_buffer);
            ^~~~~~~~~~~~~~~
ii.c: In function 'array_at':
ii.c:2464:10: warning: cast increases required alignment of target type [-Wcast-align]
   return (uint32_t *)(p + (id & ARRAY_MASK_IN_A_SEGMENT) * S_ARRAY_ELEMENT);
          ^
ii.c: In function 'array_get':
ii.c:2482:10: warning: cast increases required alignment of target type [-Wcast-align]
   return (uint32_t *)(p + (id & ARRAY_MASK_IN_A_SEGMENT) * S_ARRAY_ELEMENT);
          ^
expr.c: In function 'grn_table_select_index_equal':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:5918:25: note: in expansion of macro 'GRN_UINT32_VALUE'
           posting.rid = GRN_UINT32_VALUE(&dest);
                         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:5980:15: note: in expansion of macro 'GRN_RECORD_VALUE'
         tid = GRN_RECORD_VALUE(si->query);
               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
expr.c:5992:15: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
         sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
               ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1486:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
expr.c:5993:18: note: in expansion of macro 'GRN_INT32_VALUE_AT'
         weight = GRN_INT32_VALUE_AT(&(si->wv), 1);
                  ^~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_table_select_index_not_equal':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:6064:16: note: in expansion of macro 'GRN_UINT32_VALUE'
           id = GRN_UINT32_VALUE(&dest);
                ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:6095:15: note: in expansion of macro 'GRN_RECORD_VALUE'
         tid = GRN_RECORD_VALUE(si->query);
               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
expr.c:6111:15: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
         sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
               ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1486:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
expr.c:6112:18: note: in expansion of macro 'GRN_INT32_VALUE_AT'
         weight = GRN_INT32_VALUE_AT(&(si->wv), 1);
                  ^~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_table_select_index_match':
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:6156:23: note: in expansion of macro 'GRN_PTR_VALUE'
   grn_obj wv, **ip = &GRN_PTR_VALUE(&si->index);
                       ^~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:6159:18: note: in expansion of macro 'GRN_INT32_VALUE'
   int32_t *wp = &GRN_INT32_VALUE(&si->wv);
                  ^~~~~~~~~~~~~~~
expr.c:6184:26: warning: cast increases required alignment of target type [-Wcast-align]
   optarg.weight_vector = (int *)GRN_BULK_HEAD(&wv);
                          ^
expr.c:6200:10: warning: cast increases required alignment of target type [-Wcast-align]
         ((int *)GRN_BULK_HEAD(&wv))[weight_index] = weight;
          ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:6204:31: note: in expansion of macro 'GRN_INT32_VALUE'
       optarg.weight_vector = &GRN_INT32_VALUE(&wv);
                               ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
expr.c:6210:21: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     optarg.scorer = GRN_PTR_VALUE_AT(&(si->scorers), j);
                     ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
expr.c:6212:7: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       GRN_PTR_VALUE_AT(&(si->scorer_args_exprs), j);
       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
expr.c:6214:7: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       GRN_UINT32_VALUE_AT(&(si->scorer_args_expr_offsets), j);
       ^~~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_table_select_index_range_key':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
expr.c:6399:13: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
             ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1486:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
expr.c:6400:16: note: in expansion of macro 'GRN_INT32_VALUE_AT'
       weight = GRN_INT32_VALUE_AT(&(si->wv), 1);
                ^~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_table_select_index_range_column':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
expr.c:6491:13: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
             ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1486:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
expr.c:6492:16: note: in expansion of macro 'GRN_INT32_VALUE_AT'
       weight = GRN_INT32_VALUE_AT(&(si->wv), 1);
                ^~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_table_select_index':
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:6654:22: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *index = GRN_PTR_VALUE(&si->index);
                      ^~~~~~~~~~~~~
expr.c: In function 'grn_table_select':
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
expr.c:6885:11: note: in expansion of macro 'GRN_PTR_POP'
           GRN_PTR_POP(&res_stack, res_);
           ^~~~~~~~~~~
expr.c:6931:25: warning: cast increases required alignment of target type [-Wcast-align]
         stacked_res = *((grn_obj **)GRN_BULK_HEAD(&res_stack) + i);
                         ^
expr.c: In function 'grn_ptr_value_at':
expr.c:6962:9: warning: cast increases required alignment of target type [-Wcast-align]
     ? (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
         ^
expr.c: In function 'grn_int32_value_at':
expr.c:6972:9: warning: cast increases required alignment of target type [-Wcast-align]
     ? (((int32_t *)GRN_BULK_HEAD(obj))[offset])
         ^
In file included from expr.c:19:0:
grn_ecmascript.lemon: In function 'yy_reduce':
grn_db.h:410:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(int32_t *)(GRN_BULK_CURR(obj));\
              ^
grn_ecmascript.lemon:67:3: note: in expansion of macro 'GRN_INT32_POP'
   GRN_INT32_POP(&efsi->mode_stack, mode);
   ^~~~~~~~~~~~~
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
grn_ecmascript.lemon:72:3: note: in expansion of macro 'GRN_PTR_POP'
   GRN_PTR_POP(&efsi->column_stack, c);
   ^~~~~~~~~~~
In file included from expr.c:19:0:
grn_db.h:410:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(int32_t *)(GRN_BULK_CURR(obj));\
              ^
grn_ecmascript.lemon:73:3: note: in expansion of macro 'GRN_INT32_POP'
   GRN_INT32_POP(&efsi->mode_stack, mode);
   ^~~~~~~~~~~~~
grn_db.h:410:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(int32_t *)(GRN_BULK_CURR(obj));\
              ^
grn_ecmascript.lemon:79:7: note: in expansion of macro 'GRN_INT32_POP'
       GRN_INT32_POP(&efsi->max_interval_stack, max_interval);
       ^~~~~~~~~~~~~
grn_db.h:410:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(int32_t *)(GRN_BULK_CURR(obj));\
              ^
grn_ecmascript.lemon:85:7: note: in expansion of macro 'GRN_INT32_POP'
       GRN_INT32_POP(&efsi->similarity_threshold_stack, similarity_threshold);
       ^~~~~~~~~~~~~
grn_db.h:410:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(int32_t *)(GRN_BULK_CURR(obj));\
              ^
grn_ecmascript.lemon:207:5: note: in expansion of macro 'GRN_INT32_POP'
     GRN_INT32_POP(&efsi->max_interval_stack, max_interval);
     ^~~~~~~~~~~~~
In file included from expr.c:7191:0:
grn_ecmascript.lemon:512:15: warning: cast increases required alignment of target type [-Wcast-align]
     columns = (grn_obj **)GRN_BULK_HEAD(&columns_buffer);
               ^
expr.c: In function 'accept_query_string':
ii.c: In function 'buffer_new':
ii.c:4168:9: warning: cast increases required alignment of target type [-Wcast-align]
   *br = (buffer_rec *)(((byte *)&b->terms[b->header.nterms]) + b->header.buffer_free);
         ^
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
expr.c:7218:3: note: in expansion of macro 'GRN_PTR_POP'
   GRN_PTR_POP(&efsi->token_stack, token);
   ^~~~~~~~~~~
ii.c: In function 'grn_ii_update_one':
ii.c:4579:14: warning: cast increases required alignment of target type [-Wcast-align]
         br = (buffer_rec *)(((byte *)&b->terms[b->header.nterms])
              ^
ii.c:4642: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:4812:10: warning: cast increases required alignment of target type [-Wcast-align]
     br = (buffer_rec *)(((byte *)&b->terms[b->header.nterms]) + b->header.buffer_free);
          ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
expr.c: In function 'grn_expr_syntax_expand_term_by_func':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:8323:8: note: in expansion of macro 'GRN_INT32_VALUE'
   rc = GRN_INT32_VALUE(rc_object);
        ^~~~~~~~~~~~~~~
In file included from expr.c:19:0:
expr.c: In function 'grn_expr_get_keywords':
grn_db.h:419:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(uint32_t *)(GRN_BULK_CURR(obj));\
              ^
expr.c:8601:13: note: in expansion of macro 'GRN_UINT32_POP'
             GRN_UINT32_POP(&but_stack, npbut);
             ^~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from ii.c:17:
ii.c: In function 'grn_ii_column_update':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
ii.c:6241:50: note: in expansion of macro 'GRN_RECORD_VALUE'
           grn_uvector_add_element(ctx, &uvector, GRN_RECORD_VALUE(new_),
                                                  ^~~~~~~~~~~~~~~~
expr.c: In function 'grn_expr_snip_add_conditions':
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
expr.c:8636:7: note: in expansion of macro 'GRN_PTR_POP'
       GRN_PTR_POP(&keywords, keyword);
       ^~~~~~~~~~~
ii.c:6288:11: warning: cast increases required alignment of target type [-Wcast-align]
     tpe = (grn_id *)GRN_BULK_CURR(post);
           ^
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
expr.c:8646:7: note: in expansion of macro 'GRN_PTR_POP'
       GRN_PTR_POP(&keywords, keyword);
       ^~~~~~~~~~~
ii.c:6289:15: warning: cast increases required alignment of target type [-Wcast-align]
     for (tp = (grn_id *)GRN_BULK_HEAD(post); tp < tpe; tp++) {
               ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from ii.c:17:
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
ii.c:6354:50: note: in expansion of macro 'GRN_RECORD_VALUE'
           grn_uvector_add_element(ctx, &uvector, GRN_RECORD_VALUE(old_),
                                                  ^~~~~~~~~~~~~~~~
ii.c: In function 'grn_ii_builder_append_value':
ii.c:11319:16: warning: cast increases required alignment of target type [-Wcast-align]
         tid = *(grn_id *)value;
                ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o index_column.lo index_column.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c index_column.c  -fPIC -DPIC -o .libs/index_column.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o io.lo io.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c io.c  -fPIC -DPIC -o .libs/io.o
io.c: In function 'array_init_':
io.c:379:36: warning: cast increases required alignment of target type [-Wcast-align]
   grn_io_array_spec *array_specs = (grn_io_array_spec *)io->user_header;
                                    ^
io.c:384:15: warning: cast increases required alignment of target type [-Wcast-align]
   io->ainfo = (grn_io_array_info *)mp;
               ^
io.c:394:29: warning: cast increases required alignment of target type [-Wcast-align]
     io->ainfo[i].segments = (uint32_t *)hp;
                             ^
io.c:395:26: warning: cast increases required alignment of target type [-Wcast-align]
     io->ainfo[i].addrs = (void **)mp;
                          ^
io.c: In function 'array_init':
io.c:408:38: warning: cast increases required alignment of target type [-Wcast-align]
     grn_io_array_spec *array_specs = (grn_io_array_spec *)io->user_header;
                                      ^
io.c: In function 'grn_io_expire':
io.c:1289:44: warning: cast increases required alignment of target type [-Wcast-align]
           grn_io_array_spec *array_specs = (grn_io_array_spec *)io->user_header;
                                            ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o logger.lo logger.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c logger.c  -fPIC -DPIC -o .libs/logger.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb.lo mrb.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb.c  -fPIC -DPIC -o .libs/mrb.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o nfkc.lo nfkc.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c nfkc.c  -fPIC -DPIC -o .libs/nfkc.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o nfkc50.lo nfkc50.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c nfkc50.c  -fPIC -DPIC -o .libs/nfkc50.o
ii.c: In function 'buffer_split.isra.62':
ii.c:3804:27: warning: 'dls1' may be used uninitialized in this function [-Wmaybe-uninitialized]
                           array_update(ctx, ii, dls1, db1);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ii.c:3803:27: warning: 'dls0' may be used uninitialized in this function [-Wmaybe-uninitialized]
                           array_update(ctx, ii, dls0, db0);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from ii.c:17:
../include/groonga/groonga.h:1124:5: warning: 'dps1' may be used uninitialized in this function [-Wmaybe-uninitialized]
     grn_logger_put(ctx, (level), __FILE__, __LINE__, __FUNCTION__, __VA_ARGS__); \
     ^~~~~~~~~~~~~~
ii.c:3733:18: note: 'dps1' was declared here
   uint32_t dps0, dps1, dls0, dls1, sps, scn, dcn0 = 0, dcn1 = 0;
                  ^~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from ii.c:17:
../include/groonga/groonga.h:1124:5: warning: 'dps0' may be used uninitialized in this function [-Wmaybe-uninitialized]
     grn_logger_put(ctx, (level), __FILE__, __LINE__, __FUNCTION__, __VA_ARGS__); \
     ^~~~~~~~~~~~~~
ii.c:3733:12: note: 'dps0' was declared here
   uint32_t dps0, dps1, dls0, dls1, sps, scn, dcn0 = 0, dcn1 = 0;
            ^~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o normalizer.lo normalizer.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c normalizer.c  -fPIC -DPIC -o .libs/normalizer.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o obj.lo obj.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c obj.c  -fPIC -DPIC -o .libs/obj.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from obj.c:19:
obj.c: In function 'grn_obj_is_true':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
obj.c:36:14: note: in expansion of macro 'GRN_INT32_VALUE'
       return GRN_INT32_VALUE(obj) != 0;
              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
obj.c:39:14: note: in expansion of macro 'GRN_UINT32_VALUE'
       return GRN_UINT32_VALUE(obj) != 0;
              ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
obj.c:43:21: note: in expansion of macro 'GRN_FLOAT_VALUE'
       float_value = GRN_FLOAT_VALUE(obj);
                     ^~~~~~~~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o operator.lo operator.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c operator.c  -fPIC -DPIC -o .libs/operator.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
operator.c: In function 'grn_operator_exec_equal':
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:200:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:206:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:212:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:218:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:224:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:227:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:230:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:234:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ == GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:237:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ == GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:240:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:249:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ == GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:264:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:270:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:273:21: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:273:51: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:276:21: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:276:52: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:280:21: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:280:51: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:283:21: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:283:52: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:286:21: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:286:51: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:349:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
operator.c: In function 'grn_operator_exec_not_equal':
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:183:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:189:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:195:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:200:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:201:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:206:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:207:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:212:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:213:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:218:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:219:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:224:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:227:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:230:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:234:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ == GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:237:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ == GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:240:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:249:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ == GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:264:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:265:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:270:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:273:21: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:273:51: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:276:21: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:276:52: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:280:21: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:280:51: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:283:21: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:283:52: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:286:21: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:286:51: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:137:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:140:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:143:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:146:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:149:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:152:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:155:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:17: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                 ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:158:47: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                               ^~~~~~~~~~~~~~~
operator.c:312:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:358:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
operator.c: In function 'grn_operator_exec_less':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:657:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
operator.c: In function 'grn_operator_exec_greater':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
expr.c: In function 'grn_expr_exec':
expr.c:3697:1: warning: const/copy propagation disabled: 24502 basic blocks and 109112 registers; increase --param max-gcse-memory above 334207280 [-Wdisabled-optimization]
 }
 ^
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
expr.c:3697:1: warning: PRE disabled: 24502 basic blocks and 109112 registers; increase --param max-gcse-memory above 334207280 [-Wdisabled-optimization]
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
expr.c:3697:1: warning: const/copy propagation disabled: 24502 basic blocks and 109112 registers; increase --param max-gcse-memory above 334207280 [-Wdisabled-optimization]
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:666:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
operator.c: In function 'grn_operator_exec_less_equal':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:675:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
operator.c: In function 'grn_operator_exec_greater_equal':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:601:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, x_table, GRN_RECORD_VALUE(x), &x_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o output.lo output.c
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:481:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:487:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:493:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:499:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:505:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:508:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:511:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:515:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:518:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:46:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/time.h:40:45: note: in definition of macro 'GRN_TIME_PACK'
 #define GRN_TIME_PACK(sec, usec) ((int64_t)(sec) * GRN_TIME_USEC_PER_SEC + (usec))
                                             ^~~
operator.c:521:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:530:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:545:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:551:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:647:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:684:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
operator.c: In function 'exec_text_operator_record_text':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:1031:50: note: in expansion of macro 'GRN_RECORD_VALUE'
   record_key_len = grn_table_get_key(ctx, table, GRN_RECORD_VALUE(record),
                                                  ^~~~~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c output.c  -fPIC -DPIC -o .libs/output.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from output.c:18:
output.c: In function 'put_delimiter':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:29:30: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define CURR_LEVEL (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1))) : 0)
                              ^~~~~~~~~~~~~~~~~~~
output.c:126:20: note: in expansion of macro 'CURR_LEVEL'
   uint32_t level = CURR_LEVEL;
                    ^~~~~~~~~~
output.c: In function 'grn_output_array_close':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:29:30: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define CURR_LEVEL (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1))) : 0)
                              ^~~~~~~~~~~~~~~~~~~
output.c:220:11: note: in expansion of macro 'CURR_LEVEL'
       if (CURR_LEVEL >= 2) { GRN_TEXT_PUTC(ctx, outbuf, '\t'); }
           ^~~~~~~~~~
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:245:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_map_close':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:29:30: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define CURR_LEVEL (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1))) : 0)
                              ^~~~~~~~~~~~~~~~~~~
output.c:300:11: note: in expansion of macro 'CURR_LEVEL'
       if (CURR_LEVEL >= 2) { GRN_TEXT_PUTC(ctx, outbuf, '\t'); }
           ^~~~~~~~~~
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:325:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_int32':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:355:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_int64':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:385:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_uint64':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:415:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_float':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:445:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_str':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:477:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_bool':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:518:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_null':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:544:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_bulk_void':
output.c:551:39: warning: cast increases required alignment of target type [-Wcast-align]
   if (value_len == sizeof(grn_id) && *(grn_id *)value == GRN_ID_NIL) {
                                       ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from output.c:18:
output.c: In function 'grn_output_time':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:587:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_output_geo_point':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
output.c:32:31: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
 #define INCR_LENGTH (DEPTH ? (GRN_UINT32_VALUE_AT(LEVELS, (DEPTH - 1)) += 2) : 0)
                               ^~~~~~~~~~~~~~~~~~~
output.c:659:3: note: in expansion of macro 'INCR_LENGTH'
   INCR_LENGTH;
   ^~~~~~~~~~~
output.c: In function 'grn_text_atoj':
output.c:690:13: warning: cast increases required alignment of target type [-Wcast-align]
             (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
             ^
output.c:704:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                  ^
output.c:711:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                  ^
output.c:720:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                  ^
output.c:729:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                  ^
output.c:738:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                  ^
output.c:750:19: warning: cast increases required alignment of target type [-Wcast-align]
             idp = (grn_id *)GRN_BULK_HEAD(&buf);
                   ^
output.c:778:18: warning: cast increases required alignment of target type [-Wcast-align]
           id = *((grn_id *)GRN_BULK_HEAD(&buf));
                  ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from output.c:18:
output.c: In function 'grn_output_bulk':
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
output.c:862:45: note: in expansion of macro 'GRN_INT16_VALUE'
                      GRN_BULK_VSIZE(bulk) ? GRN_INT16_VALUE(bulk) : 0);
                                             ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
output.c:866:45: note: in expansion of macro 'GRN_UINT16_VALUE'
                      GRN_BULK_VSIZE(bulk) ? GRN_UINT16_VALUE(bulk) : 0);
                                             ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
output.c:870:45: note: in expansion of macro 'GRN_INT32_VALUE'
                      GRN_BULK_VSIZE(bulk) ? GRN_INT32_VALUE(bulk) : 0);
                                             ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
output.c:874:45: note: in expansion of macro 'GRN_UINT32_VALUE'
                      GRN_BULK_VSIZE(bulk) ? GRN_UINT32_VALUE(bulk) : 0);
                                             ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
output.c:878:45: note: in expansion of macro 'GRN_INT64_VALUE'
                      GRN_BULK_VSIZE(bulk) ? GRN_INT64_VALUE(bulk) : 0);
                                             ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
output.c:882:46: note: in expansion of macro 'GRN_UINT64_VALUE'
                       GRN_BULK_VSIZE(bulk) ? GRN_UINT64_VALUE(bulk) : 0);
                                              ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
output.c:886:45: note: in expansion of macro 'GRN_FLOAT_VALUE'
                      GRN_BULK_VSIZE(bulk) ? GRN_FLOAT_VALUE(bulk) : 0);
                                             ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
output.c:890:44: note: in expansion of macro 'GRN_INT64_VALUE'
                     GRN_BULK_VSIZE(bulk) ? GRN_INT64_VALUE(bulk) : 0);
                                            ^~~~~~~~~~~~~~~
output.c:895:49: warning: cast increases required alignment of target type [-Wcast-align]
                          GRN_BULK_VSIZE(bulk) ? (grn_geo_point *)GRN_BULK_HEAD(bulk) : NULL);
                                                 ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from output.c:18:
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
output.c:901:19: note: in expansion of macro 'GRN_RECORD_VALUE'
       grn_id id = GRN_RECORD_VALUE(bulk);
                   ^~~~~~~~~~~~~~~~
output.c:902:27: warning: cast increases required alignment of target type [-Wcast-align]
       grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
                           ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from output.c:18:
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
output.c:938:19: note: in expansion of macro 'GRN_RECORD_VALUE'
       grn_id id = GRN_RECORD_VALUE(bulk);
                   ^~~~~~~~~~~~~~~~
output.c: In function 'grn_output_uvector_result_set':
output.c:978:13: warning: cast increases required alignment of target type [-Wcast-align]
   columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
             ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from output.c:18:
output.c: In function 'grn_output_pvector':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
output.c:1221:15: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       value = GRN_PTR_VALUE_AT(pvector, i);
               ^~~~~~~~~~~~~~~~
output.c: In function 'grn_output_table_columns_by_columns':
output.c:1532:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
                       ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from output.c:18:
output.c: In function 'grn_output_table_record_by_expression':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
output.c:1609:39: note: in expansion of macro 'GRN_RECORD_VALUE'
                                       GRN_RECORD_VALUE(record));
                                       ^~~~~~~~~~~~~~~~
output.c: In function 'grn_output_table_records_by_columns':
output.c:1701:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
                       ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o pat.lo pat.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c pat.c  -fPIC -DPIC -o .libs/pat.o
In file included from pat.c:17:0:
pat.c: In function 'grn_pat_get_key':
grn.h:698:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
pat.c:931:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((keybuf), (key), (size));\
     ^~~~~~~~
pat.c:1877:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, keybuf, key, len);
       ^~~~~~~
pat.c: In function 'grn_pat_get_key2':
grn.h:697:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
pat.c:931:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((keybuf), (key), (size));\
     ^~~~~~~~
pat.c:1906:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, curr, key, len);
       ^~~~~~~
grn.h:698:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
pat.c:931:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((keybuf), (key), (size));\
     ^~~~~~~~
pat.c:1906:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, curr, key, len);
       ^~~~~~~
pat.c:940:9: warning: cast increases required alignment of target type [-Wcast-align]
       *((int64_t *)(keybuf)) = v ^ (((v^(1LL<<63))>> 63)|(1LL<<63));  \
         ^
pat.c:1906:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, curr, key, len);
       ^~~~~~~
pat.c: In function 'grn_pat_set_value':
pat.c:1981:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int32_t *)v) += *((int32_t *)value);
               ^
pat.c:1984:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int64_t *)v) += *((int64_t *)value);
               ^
pat.c:1993:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int32_t *)v) -= *((int32_t *)value);
               ^
pat.c:1996:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int64_t *)v) -= *((int64_t *)value);
               ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o plugin.lo plugin.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c plugin.c  -fPIC -DPIC -o .libs/plugin.o
plugin.c: In function 'grn_plugin_ensure_registered':
plugin.c:909:18: warning: cast increases required alignment of target type [-Wcast-align]
       plugin = *((grn_plugin **)value);
                  ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc.lo proc.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc.c  -fPIC -DPIC -o .libs/proc.o
In file included from proc.c:24:0:
proc.c: In function 'proc_load':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
grn_output.h:103:31: note: in definition of macro 'GRN_OUTPUT_UINT64'
   (grn_ctx_output_uint64(ctx, value))
                               ^~~~~
proc.c:172:29: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
           GRN_OUTPUT_UINT64(GRN_UINT32_VALUE_AT(ids, i));
                             ^~~~~~~~~~~~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o report.lo report.c
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_proc.h:21,
                 from proc.c:19:
proc.c: In function 'list_proc':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
proc.c:1145:16: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         proc = GRN_PTR_VALUE_AT(&target_procs, i);
                ^~~~~~~~~~~~~~~~
proc.c: In function 'func_rand':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1181:15: note: in expansion of macro 'GRN_INT32_VALUE'
     int max = GRN_INT32_VALUE(args[0]);
               ^~~~~~~~~~~~~~~
proc.c: In function 'is_negative_value':
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1280:12: note: in expansion of macro 'GRN_INT16_VALUE'
     return GRN_INT16_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1282:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1284:12: note: in expansion of macro 'GRN_INT64_VALUE'
     return GRN_INT64_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:1286:12: note: in expansion of macro 'GRN_TIME_VALUE'
     return GRN_TIME_VALUE(number) < 0;
            ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1288:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
     return GRN_FLOAT_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
proc.c: In function 'compare_number':
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1356:24: note: in expansion of macro 'GRN_INT16_VALUE'
                        GRN_INT16_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1357:24: note: in expansion of macro 'GRN_INT16_VALUE'
                        GRN_INT16_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1360:24: note: in expansion of macro 'GRN_UINT16_VALUE'
                        GRN_UINT16_VALUE(number1),
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1361:24: note: in expansion of macro 'GRN_UINT16_VALUE'
                        GRN_UINT16_VALUE(number2));
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1364:24: note: in expansion of macro 'GRN_INT32_VALUE'
                        GRN_INT32_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1365:24: note: in expansion of macro 'GRN_INT32_VALUE'
                        GRN_INT32_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1368:24: note: in expansion of macro 'GRN_UINT32_VALUE'
                        GRN_UINT32_VALUE(number1),
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1369:24: note: in expansion of macro 'GRN_UINT32_VALUE'
                        GRN_UINT32_VALUE(number2));
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1372:24: note: in expansion of macro 'GRN_INT64_VALUE'
                        GRN_INT64_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1373:24: note: in expansion of macro 'GRN_INT64_VALUE'
                        GRN_INT64_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1376:24: note: in expansion of macro 'GRN_UINT64_VALUE'
                        GRN_UINT64_VALUE(number1),
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1377:24: note: in expansion of macro 'GRN_UINT64_VALUE'
                        GRN_UINT64_VALUE(number2));
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1380:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
                        GRN_FLOAT_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1381:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
                        GRN_FLOAT_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1334:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:1384:24: note: in expansion of macro 'GRN_TIME_VALUE'
                        GRN_TIME_VALUE(number1),
                        ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1335:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:1385:24: note: in expansion of macro 'GRN_TIME_VALUE'
                        GRN_TIME_VALUE(number2));
                        ^~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_proc.h:21,
                 from proc.c:19:
proc.c: In function 'selector_to_function_data_init':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1671:14: note: in expansion of macro 'GRN_RECORD_VALUE'
     pi.rid = GRN_RECORD_VALUE(variable);
              ^~~~~~~~~~~~~~~~
proc.c: In function 'func_between':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1379:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
proc.c:2402:41: note: in expansion of macro 'GRN_RECORD_VALUE'
   GRN_RECORD_SET(ctx, between_variable, GRN_RECORD_VALUE(variable));
                                         ^~~~~~~~~~~~~~~~
proc.c: In function 'selector_between_sequential_search_should_use':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:2530:9: note: in expansion of macro 'GRN_TIME_VALUE'
         GRN_TIME_VALUE(data->max) - GRN_TIME_VALUE(data->min);
         ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:2530:37: note: in expansion of macro 'GRN_TIME_VALUE'
         GRN_TIME_VALUE(data->max) - GRN_TIME_VALUE(data->min);
                                     ^~~~~~~~~~~~~~
proc.c: In function 'selector_in_values_find_source':
../include/groonga/groonga.h:1487:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE_AT(obj,offset) (((unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc.c:2812:17: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
     source_id = GRN_UINT32_VALUE_AT(&source_ids, 0);
                 ^~~~~~~~~~~~~~~~~~~
proc.c: In function 'selector_in_values_sequential_search':
../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc.c:2895:25: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
       grn_id value_id = GRN_RECORD_VALUE_AT(&value_ids, i);
                         ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
proc.c:2937:31: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
             grn_id value_id = GRN_RECORD_VALUE_AT(&value_ids, i);
                               ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:2938:29: note: in expansion of macro 'GRN_RECORD_VALUE'
             if (value_id == GRN_RECORD_VALUE(&record_value)) {
                             ^~~~~~~~~~~~~~~~
proc.c: In function 'proc_range_filter':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:3085:21: note: in expansion of macro 'GRN_INT32_VALUE'
       real_offset = GRN_INT32_VALUE(&int32_value);
                     ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:3100:20: note: in expansion of macro 'GRN_INT32_VALUE'
       real_limit = GRN_INT32_VALUE(&int32_value);
                    ^~~~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c report.c  -fPIC -DPIC -o .libs/report.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o request_canceler.lo request_canceler.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c request_canceler.c  -fPIC -DPIC -o .libs/request_canceler.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o request_timer.lo request_timer.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c request_timer.c  -fPIC -DPIC -o .libs/request_timer.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o rset.lo rset.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c rset.c  -fPIC -DPIC -o .libs/rset.o
rset.c: In function 'grn_rset_recinfo_update_calc_values':
rset.c:70:29: warning: cast increases required alignment of target type [-Wcast-align]
     int64_t current_max = *((int64_t *)values);
                             ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_db.h:21,
                 from rset.c:17:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
rset.c:71:25: note: in expansion of macro 'GRN_INT64_VALUE'
     int64_t value_raw = GRN_INT64_VALUE(&value_int64);
                         ^~~~~~~~~~~~~~~
rset.c:73:9: warning: cast increases required alignment of target type [-Wcast-align]
       *((int64_t *)values) = value_raw;
         ^
rset.c:78:29: warning: cast increases required alignment of target type [-Wcast-align]
     int64_t current_min = *((int64_t *)values);
                             ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_db.h:21,
                 from rset.c:17:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
rset.c:79:25: note: in expansion of macro 'GRN_INT64_VALUE'
     int64_t value_raw = GRN_INT64_VALUE(&value_int64);
                         ^~~~~~~~~~~~~~~
rset.c:81:9: warning: cast increases required alignment of target type [-Wcast-align]
       *((int64_t *)values) = value_raw;
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_db.h:21,
                 from rset.c:17:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
rset.c:86:25: note: in expansion of macro 'GRN_INT64_VALUE'
     int64_t value_raw = GRN_INT64_VALUE(&value_int64);
                         ^~~~~~~~~~~~~~~
rset.c:87:7: warning: cast increases required alignment of target type [-Wcast-align]
     *((int64_t *)values) += value_raw;
       ^
rset.c:91:32: warning: cast increases required alignment of target type [-Wcast-align]
     double current_average = *((double *)values);
                                ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_db.h:21,
                 from rset.c:17:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
rset.c:92:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
     double value_raw = GRN_FLOAT_VALUE(&value_float);
                        ^~~~~~~~~~~~~~~
rset.c:93:7: warning: cast increases required alignment of target type [-Wcast-align]
     *((double *)values) += (value_raw - current_average) / ri->n_subrecs;
       ^
rset.c: In function 'grn_rset_recinfo_get_max_':
rset.c:118:10: warning: cast increases required alignment of target type [-Wcast-align]
   return (int64_t *)values;
          ^
rset.c: In function 'grn_rset_recinfo_get_min_':
rset.c:173:10: warning: cast increases required alignment of target type [-Wcast-align]
   return (int64_t *)values;
          ^
rset.c: In function 'grn_rset_recinfo_get_sum_':
rset.c:231:10: warning: cast increases required alignment of target type [-Wcast-align]
   return (int64_t *)values;
          ^
rset.c: In function 'grn_rset_recinfo_get_avg_':
rset.c:292:10: warning: cast increases required alignment of target type [-Wcast-align]
   return (double *)values;
          ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o scanner.lo scanner.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c scanner.c  -fPIC -DPIC -o .libs/scanner.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o scorer.lo scorer.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c scorer.c  -fPIC -DPIC -o .libs/scorer.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o scorers.lo scorers.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c scorers.c  -fPIC -DPIC -o .libs/scorers.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_db.h:21,
                 from scorers.c:19:
scorers.c: In function 'scorer_tf_at_most':
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
scorers.c:74:11: note: in expansion of macro 'GRN_FLOAT_VALUE'
     max = GRN_FLOAT_VALUE(max_raw);
           ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
scorers.c:82:13: note: in expansion of macro 'GRN_FLOAT_VALUE'
       max = GRN_FLOAT_VALUE(&casted_max_raw);
             ^~~~~~~~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o snip.lo snip.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o store.lo store.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c snip.c  -fPIC -DPIC -o .libs/snip.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c store.c  -fPIC -DPIC -o .libs/store.o
store.c: In function 'grn_ja_free':
store.c:618:6: warning: cast increases required alignment of target type [-Wcast-align]
     *(uint32_t *)(addr + pos - sizeof(grn_id)) = DELETED|aligned_size;
      ^
store.c: In function 'grn_ja_replace':
store.c:713:24: warning: cast increases required alignment of target type [-Wcast-align]
   if (cas && *cas != *((uint64_t *)&eback)) {
                        ^
store.c:721:26: warning: cast increases required alignment of target type [-Wcast-align]
     uint64_t *location = (uint64_t *)(einfo + pos);
                          ^
store.c:722:24: warning: cast increases required alignment of target type [-Wcast-align]
     uint64_t value = *((uint64_t *)ei);
                        ^
store.c: In function 'grn_ja_alloc':
store.c:800:8: warning: cast increases required alignment of target type [-Wcast-align]
       *(grn_id *)(addr + pos) = id;
        ^
store.c:803:10: warning: cast increases required alignment of target type [-Wcast-align]
         *(grn_id *)(addr + pos + aligned_size) = GRN_ID_NIL;
          ^
store.c: In function 'grn_ja_put_raw':
store.c:953:30: warning: cast increases required alignment of target type [-Wcast-align]
             uint32_t pos = *((uint32_t *)(b + el));
                              ^
store.c:959:17: warning: cast increases required alignment of target type [-Wcast-align]
               *((uint32_t *)(b + el)) = value_len - rest;
                 ^
store.c:962:17: warning: cast increases required alignment of target type [-Wcast-align]
               *((uint32_t *)(b + el)) = pos + value_len;
                 ^
store.c:1003:30: warning: cast increases required alignment of target type [-Wcast-align]
             uint32_t pos = *((uint32_t *)(b + el));
                              ^
store.c:1009:17: warning: cast increases required alignment of target type [-Wcast-align]
               *((uint32_t *)(b + el)) = el - rest;
                 ^
store.c:1012:17: warning: cast increases required alignment of target type [-Wcast-align]
               *((uint32_t *)(b + el)) = pos - value_len;
                 ^
store.c: In function 'grn_ja_element_info':
store.c:1181:16: warning: cast increases required alignment of target type [-Wcast-align]
       *cas = *((uint64_t *)&einfo[id & JA_M_EINFO_IN_A_SEGMENT]);
                ^
store.c: In function 'grn_ja_put_packed':
store.c:1260:5: warning: cast increases required alignment of target type [-Wcast-align]
   *((uint64_t *)packed_value) = packed_value_meta;
     ^
store.c:1261:11: warning: cast increases required alignment of target type [-Wcast-align]
   memcpy(((uint64_t *)packed_value) + 1,
           ^
store.c: In function 'grn_ja_get_value':
store.c:1574:24: warning: cast increases required alignment of target type [-Wcast-align]
       uint32_t pos = *((uint32_t *)(b + el));
                        ^
store.c: In function 'grn_ja_defrag_seg':
store.c:1852:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id id = *((grn_id *)v);
                   ^
store.c: In function 'grn_ja_check':
store.c:1943:27: warning: cast increases required alignment of target type [-Wcast-align]
             grn_id id = *((grn_id *)v);
                           ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o str.lo str.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c str.c  -fPIC -DPIC -o .libs/str.o
str.c: In function 'grn_text_atoj':
str.c:2630:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                  ^
str.c:2638:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)grn_obj_get_value_(ctx, a->obj, id, &vs);
                                  ^
str.c:2648:19: warning: cast increases required alignment of target type [-Wcast-align]
             idp = (grn_id *)GRN_BULK_HEAD(&buf);
                   ^
str.c:2675:16: warning: cast increases required alignment of target type [-Wcast-align]
         id = *((grn_id *)GRN_BULK_HEAD(&buf));
                ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from str.c:17:
str.c: In function 'grn_text_otoj':
../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
str.c:2739:54: note: in expansion of macro 'GRN_INT16_VALUE'
       grn_text_itoa(ctx, bulk, GRN_BULK_VSIZE(obj) ? GRN_INT16_VALUE(obj) : 0);
                                                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2742:55: note: in expansion of macro 'GRN_UINT16_VALUE'
       grn_text_lltoa(ctx, bulk, GRN_BULK_VSIZE(obj) ? GRN_UINT16_VALUE(obj) : 0);
                                                       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
str.c:2745:54: note: in expansion of macro 'GRN_INT32_VALUE'
       grn_text_itoa(ctx, bulk, GRN_BULK_VSIZE(obj) ? GRN_INT32_VALUE(obj) : 0);
                                                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2748:55: note: in expansion of macro 'GRN_UINT32_VALUE'
       grn_text_lltoa(ctx, bulk, GRN_BULK_VSIZE(obj) ? GRN_UINT32_VALUE(obj) : 0);
                                                       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
str.c:2751:55: note: in expansion of macro 'GRN_INT64_VALUE'
       grn_text_lltoa(ctx, bulk, GRN_BULK_VSIZE(obj) ? GRN_INT64_VALUE(obj) : 0);
                                                       ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2754:56: note: in expansion of macro 'GRN_UINT64_VALUE'
       grn_text_ulltoa(ctx, bulk, GRN_BULK_VSIZE(obj) ? GRN_UINT64_VALUE(obj) : 0);
                                                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
str.c:2757:54: note: in expansion of macro 'GRN_FLOAT_VALUE'
       grn_text_ftoa(ctx, bulk, GRN_BULK_VSIZE(obj) ? GRN_FLOAT_VALUE(obj) : 0);
                                                      ^~~~~~~~~~~~~~~
str.c:2761:23: warning: cast increases required alignment of target type [-Wcast-align]
         double dv = *((int64_t *)GRN_BULK_HEAD(obj));
                       ^
str.c:2769:29: warning: cast increases required alignment of target type [-Wcast-align]
         grn_geo_point *gp = (grn_geo_point *)GRN_BULK_HEAD(obj);
                             ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from str.c:17:
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2783:21: note: in expansion of macro 'GRN_RECORD_VALUE'
         grn_id id = GRN_RECORD_VALUE(obj);
                     ^~~~~~~~~~~~~~~~
str.c:2784:29: warning: cast increases required alignment of target type [-Wcast-align]
         grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
                             ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from str.c:17:
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2826:23: note: in expansion of macro 'GRN_RECORD_VALUE'
           grn_id id = GRN_RECORD_VALUE(obj);
                       ^~~~~~~~~~~~~~~~
str.c:2849:19: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *v = (grn_id *)GRN_BULK_HEAD(obj), *ve = (grn_id *)GRN_BULK_CURR(obj);
                   ^
str.c:2849:55: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *v = (grn_id *)GRN_BULK_HEAD(obj), *ve = (grn_id *)GRN_BULK_CURR(obj);
                                                       ^
str.c:2851:27: warning: cast increases required alignment of target type [-Wcast-align]
       grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
                           ^
str.c:2928:21: warning: cast increases required alignment of target type [-Wcast-align]
         grn_id *v = (grn_id *)GRN_BULK_HEAD(obj),
                     ^
str.c:2929:22: warning: cast increases required alignment of target type [-Wcast-align]
                *ve = (grn_id *)GRN_BULK_CURR(obj);
                      ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from str.c:17:
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
str.c:3010:17: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         value = GRN_PTR_VALUE_AT(obj, i);
                 ^~~~~~~~~~~~~~~~
str.c:3022:27: warning: cast increases required alignment of target type [-Wcast-align]
       grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
                           ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o string.lo string.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c string.c  -fPIC -DPIC -o .libs/string.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o thread.lo thread.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c thread.c  -fPIC -DPIC -o .libs/thread.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o time.lo time.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o token_cursor.lo token_cursor.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c time.c  -fPIC -DPIC -o .libs/time.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o tokenizer.lo tokenizer.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c token_cursor.c  -fPIC -DPIC -o .libs/token_cursor.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_ctx.h:21,
                 from grn_token_cursor.h:21,
                 from token_cursor.c:18:
token_cursor.c: In function 'grn_token_cursor_open_initialize_token_filters':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
token_cursor.c:48:36: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *token_filter_object = GRN_PTR_VALUE_AT(token_filters, i);
                                    ^~~~~~~~~~~~~~~~
token_cursor.c: In function 'grn_token_cursor_next_apply_token_filters':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
token_cursor.c:157:26: note: in expansion of macro 'GRN_INT32_VALUE'
   current_token.status = GRN_INT32_VALUE(status);
                          ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
token_cursor.c:165:36: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *token_filter_object = GRN_PTR_VALUE_AT(token_filters, i);
                                    ^~~~~~~~~~~~~~~~
token_cursor.c: In function 'grn_token_cursor_next':
token_cursor.c:301:19: warning: cast increases required alignment of target type [-Wcast-align]
           tid = *((grn_id *)token_cursor->curr);
                   ^
token_cursor.c:320:19: warning: cast increases required alignment of target type [-Wcast-align]
           tid = *((grn_id *)token_cursor->curr);
                   ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_ctx.h:21,
                 from grn_token_cursor.h:21,
                 from token_cursor.c:18:
token_cursor.c: In function 'grn_token_cursor_close_token_filters':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
token_cursor.c:355:36: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *token_filter_object = GRN_PTR_VALUE_AT(token_filters, i);
                                    ^~~~~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c tokenizer.c  -fPIC -DPIC -o .libs/tokenizer.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o tokenizers.lo tokenizers.c
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from tokenizer.c:18:
tokenizer.c: In function 'grn_tokenizer_query_open':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
tokenizer.c:124:22: note: in expansion of macro 'GRN_UINT32_VALUE'
       query->flags = GRN_UINT32_VALUE(flags);
                      ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
tokenizer.c:129:30: note: in expansion of macro 'GRN_UINT32_VALUE'
       query->tokenize_mode = GRN_UINT32_VALUE(tokenize_mode);
                              ^~~~~~~~~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o token_filter.lo token_filter.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c tokenizers.c  -fPIC -DPIC -o .libs/tokenizers.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c token_filter.c  -fPIC -DPIC -o .libs/token_filter.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o util.lo util.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o windows.lo windows.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c util.c  -fPIC -DPIC -o .libs/util.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_db.h:21,
                 from util.c:19:
util.c: In function 'grn_ptr_inspect':
../include/groonga/groonga.h:1474:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
util.c:394:24: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *content = GRN_PTR_VALUE(ptr);
                        ^~~~~~~~~~~~~
util.c: In function 'grn_pvector_inspect':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
util.c:415:24: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *element = GRN_PTR_VALUE_AT(pvector, i);
                        ^~~~~~~~~~~~~~~~
util.c: In function 'grn_ii_inspect':
util.c:709:16: warning: cast increases required alignment of target type [-Wcast-align]
   source_ids = (grn_id *)GRN_BULK_HEAD(&sources);
                ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_db.h:21,
                 from util.c:19:
util.c: In function 'grn_time_inspect':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
util.c:1070:14: note: in expansion of macro 'GRN_TIME_VALUE'
   time_raw = GRN_TIME_VALUE(obj);
              ^~~~~~~~~~~~~~
util.c: In function 'grn_geo_point_inspect':
../include/groonga/groonga.h:1476:25: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *_val = (grn_geo_point *)GRN_BULK_HEAD(obj);\
                         ^
util.c:1100:3: note: in expansion of macro 'GRN_GEO_POINT_VALUE'
   GRN_GEO_POINT_VALUE(obj, latitude, longitude);
   ^~~~~~~~~~~~~~~~~~~
util.c: In function 'grn_json_load_open_bracket_inspect':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
util.c:1145:7: note: in expansion of macro 'GRN_UINT32_VALUE'
   n = GRN_UINT32_VALUE(obj);
       ^~~~~~~~~~~~~~~~
util.c: In function 'grn_json_load_open_brace_inspect':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
util.c:1166:7: note: in expansion of macro 'GRN_UINT32_VALUE'
   n = GRN_UINT32_VALUE(obj);
       ^~~~~~~~~~~~~~~~
util.c: In function 'grn_record_inspect':
../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
util.c:1209:8: note: in expansion of macro 'GRN_RECORD_VALUE'
   id = GRN_RECORD_VALUE(obj);
        ^~~~~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c windows.c  -fPIC -DPIC -o .libs/windows.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o windows_event_logger.lo windows_event_logger.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c windows_event_logger.c  -fPIC -DPIC -o .libs/windows_event_logger.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o 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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o window_function.lo window_function.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c file_reader.c  -fPIC -DPIC -o .libs/file_reader.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c window_function.c  -fPIC -DPIC -o .libs/window_function.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from grn_ctx.h:21,
                 from window_function.c:19:
window_function.c: In function 'grn_window_next':
../include/groonga/groonga.h:1492:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE_AT(obj,offset) (((grn_id *)GRN_BULK_HEAD(obj))[offset])
                                           ^
window_function.c:73:13: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
   next_id = GRN_RECORD_VALUE_AT(&(window->ids), window->current_index);
             ^~~~~~~~~~~~~~~~~~~
window_function.c: In function 'grn_expr_call_window_function':
window_function.c:296:40: warning: cast increases required alignment of target type [-Wcast-align]
                                        (grn_obj *)GRN_BULK_HEAD(&args),
                                        ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o window_functions.lo window_functions.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c window_functions.c  -fPIC -DPIC -o .libs/window_functions.o
expr.c:3697:1: warning: const/copy propagation disabled: 24488 basic blocks and 113039 registers; increase --param max-gcse-memory above 346064416 [-Wdisabled-optimization]
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -version-info 0:0:0 -no-undefined  -Wl,-z,relro -Wl,-z,now -o libgroonga.la -rpath /usr/lib/arm-linux-gnueabihf alloc.lo cache.lo column.lo com.lo command.lo config.lo ctx.lo ctx_impl_mrb.lo dat.lo db.lo dump.lo ts.lo type.lo error.lo expr.lo expr_code.lo geo.lo hash.lo id.lo ii.lo index_column.lo io.lo logger.lo mrb.lo nfkc.lo nfkc50.lo normalizer.lo obj.lo operator.lo output.lo pat.lo plugin.lo proc.lo report.lo request_canceler.lo request_timer.lo rset.lo scanner.lo scorer.lo scorers.lo snip.lo store.lo str.lo string.lo thread.lo time.lo token_cursor.lo tokenizer.lo tokenizers.lo token_filter.lo util.lo windows.lo windows_event_logger.lo file_reader.lo window_function.lo window_functions.lo  dat/libgrndat.la mrb/libgrnmrb.la proc/libgrnproc.la ts/libgrnts.la -lmsgpackc ../vendor/mruby/libmruby.la ../vendor/onigmo-source/libonigmo.la -llz4 -lzstd -latomic -lz -ldl -lpthread -lm  
libtool: link: g++  -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crti.o /usr/lib/gcc/arm-linux-gnueabihf/6/crtbeginS.o  .libs/alloc.o .libs/cache.o .libs/column.o .libs/com.o .libs/command.o .libs/config.o .libs/ctx.o .libs/ctx_impl_mrb.o .libs/dat.o .libs/db.o .libs/dump.o .libs/ts.o .libs/type.o .libs/error.o .libs/expr.o .libs/expr_code.o .libs/geo.o .libs/hash.o .libs/id.o .libs/ii.o .libs/index_column.o .libs/io.o .libs/logger.o .libs/mrb.o .libs/nfkc.o .libs/nfkc50.o .libs/normalizer.o .libs/obj.o .libs/operator.o .libs/output.o .libs/pat.o .libs/plugin.o .libs/proc.o .libs/report.o .libs/request_canceler.o .libs/request_timer.o .libs/rset.o .libs/scanner.o .libs/scorer.o .libs/scorers.o .libs/snip.o .libs/store.o .libs/str.o .libs/string.o .libs/thread.o .libs/time.o .libs/token_cursor.o .libs/tokenizer.o .libs/tokenizers.o .libs/token_filter.o .libs/util.o .libs/windows.o .libs/windows_event_logger.o .libs/file_reader.o .libs/window_function.o .libs/window_functions.o  -Wl,--whole-archive dat/.libs/libgrndat.a mrb/.libs/libgrnmrb.a proc/.libs/libgrnproc.a ts/.libs/libgrnts.a ../vendor/mruby/.libs/libmruby.a -Wl,--no-whole-archive  -lmsgpackc ../vendor/onigmo-source/.libs/libonigmo.a -llz4 -lzstd -latomic -lz -ldl -lpthread -L/usr/lib/gcc/arm-linux-gnueabihf/6 -L/usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf -L/usr/lib/gcc/arm-linux-gnueabihf/6/../../.. -L/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/arm-linux-gnueabihf/6/crtendS.o /usr/lib/gcc/arm-linux-gnueabihf/6/../../../arm-linux-gnueabihf/crtn.o  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,libgroonga.so.0 -o .libs/libgroonga.so.0.0.0
libtool: link: (cd ".libs" && rm -f "libgroonga.so.0" && ln -s "libgroonga.so.0.0.0" "libgroonga.so.0")
libtool: link: (cd ".libs" && rm -f "libgroonga.so" && ln -s "libgroonga.so.0.0.0" "libgroonga.so")
libtool: link: ( cd ".libs" && rm -f "libgroonga.la" && ln -s "../libgroonga.la" "libgroonga.la" )
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/lib'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/lib'
Making all in plugins
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins'
Making all in tokenizers
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/tokenizers'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -I/usr/include -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mecab_la-mecab.lo `test -f 'mecab.c' || echo './'`mecab.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -I/usr/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mecab.c  -fPIC -DPIC -o .libs/mecab_la-mecab.o
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -L/usr/lib -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 -lmecab ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,mecab.so -o .libs/mecab.so
libtool: link: ( cd ".libs" && rm -f "mecab.la" && ln -s "../mecab.la" "mecab.la" )
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/tokenizers'
Making all in suggest
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/suggest'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2  -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o suggest.lo suggest.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c suggest.c  -fPIC -DPIC -o .libs/suggest.o
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_ctx.h:21,
                 from suggest.c:24:
suggest.c: In function 'cooccurrence_search':
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:180:19: note: in expansion of macro 'GRN_RECORD_VALUE'
         post_id = GRN_RECORD_VALUE(&post);
                   ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:184:17: note: in expansion of macro 'GRN_INT32_VALUE'
         pfreq = GRN_INT32_VALUE(&pair_freq);
                 ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:185:17: note: in expansion of macro 'GRN_INT32_VALUE'
         ifreq = GRN_INT32_VALUE(&item_freq);
                 ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:186:18: note: in expansion of macro 'GRN_INT32_VALUE'
         ifreq2 = GRN_INT32_VALUE(&item_freq2);
                  ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:192:17: note: in expansion of macro 'GRN_INT32_VALUE'
         boost = GRN_INT32_VALUE(&item_boost);
                 ^~~~~~~~~~~~~~~
In file included from ../../include/groonga.h:40:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_ctx.h:21,
                 from suggest.c:24:
suggest.c: In function 'output':
../../include/groonga/output.h:60:23: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&(format)->columns);\
                       ^
suggest.c:260:7: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
       GRN_OBJ_FORMAT_FIN(ctx, &format);
       ^~~~~~~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_ctx.h:21,
                 from suggest.c:24:
suggest.c: In function 'complete_add_item':
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:278:7: note: in expansion of macro 'GRN_INT32_VALUE'
   if (GRN_INT32_VALUE(item_boost) >= 0) {
       ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:281:13: note: in expansion of macro 'GRN_INT32_VALUE'
             GRN_INT32_VALUE(item_freq) +
             ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:282:13: note: in expansion of macro 'GRN_INT32_VALUE'
             GRN_INT32_VALUE(item_boost);
             ^~~~~~~~~~~~~~~
suggest.c: In function 'correct':
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:422:23: note: in expansion of macro 'GRN_INT32_VALUE'
                   if (GRN_INT32_VALUE(&item_boost) >= 0) {
                       ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:426:30: note: in expansion of macro 'GRN_INT32_VALUE'
                             (GRN_INT32_VALUE(&item_freq2) >> 4) +
                              ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:427:29: note: in expansion of macro 'GRN_INT32_VALUE'
                             GRN_INT32_VALUE(&item_boost);
                             ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
suggest.c:477:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
                   if (GRN_FLOAT_VALUE(&score_value) < frequency_threshold) {
                       ^~~~~~~~~~~~~~~
suggest.c: In function 'learner_init_values':
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:629:28: note: in expansion of macro 'GRN_RECORD_VALUE'
   learner->post_event_id = GRN_RECORD_VALUE(learner->post_event);
                            ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:630:27: note: in expansion of macro 'GRN_RECORD_VALUE'
   learner->post_type_id = GRN_RECORD_VALUE(learner->post_type);
                           ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:631:27: note: in expansion of macro 'GRN_RECORD_VALUE'
   learner->post_item_id = GRN_RECORD_VALUE(learner->post_item);
                           ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:632:21: note: in expansion of macro 'GRN_RECORD_VALUE'
   learner->seq_id = GRN_RECORD_VALUE(learner->seq);
                     ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
suggest.c:633:30: note: in expansion of macro 'GRN_TIME_VALUE'
   learner->post_time_value = GRN_TIME_VALUE(learner->post_time);
                              ^~~~~~~~~~~~~~
suggest.c: In function 'learner_init_weight':
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:730:16: note: in expansion of macro 'GRN_UINT32_VALUE'
       weight = GRN_UINT32_VALUE(&weight_value);
                ^~~~~~~~~~~~~~~~
suggest.c: In function 'learner_learn_for_complete_and_correcnt':
suggest.c:857:8: warning: cast increases required alignment of target type [-Wcast-align]
   ep = (grn_id *)GRN_BULK_CURR(pre_events);
        ^
suggest.c:858:8: warning: cast increases required alignment of target type [-Wcast-align]
   es = (grn_id *)GRN_BULK_HEAD(pre_events);
        ^
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_ctx.h:21,
                 from suggest.c:24:
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
suggest.c:870:40: note: in expansion of macro 'GRN_TIME_VALUE'
     learn_distance = post_time_value - GRN_TIME_VALUE(&pre_time);
                                        ^~~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:876:33: note: in expansion of macro 'GRN_RECORD_VALUE'
     key = learner->key_prefix + GRN_RECORD_VALUE(pre_item);
                                 ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
suggest.c:885:9: note: in expansion of macro 'GRN_RECORD_VALUE'
     if (GRN_RECORD_VALUE(&pre_type)) {
         ^~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o suggest.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest suggest.lo  ../../lib/libgroonga.la -lmsgpackc
libtool: link: gcc -shared  -fPIC -DPIC  .libs/suggest.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs ../../lib/.libs/libgroonga.so -lmsgpackc  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,suggest.so -o .libs/suggest.so
libtool: link: ( cd ".libs" && rm -f "suggest.la" && ln -s "../suggest.la" "suggest.la" )
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/suggest'
Making all in query_expanders
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/query_expanders'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o tsv.lo tsv.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c tsv.c  -fPIC -DPIC -o .libs/tsv.o
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o tsv.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders tsv.lo  ../../lib/libgroonga.la
libtool: link: gcc -shared  -fPIC -DPIC  .libs/tsv.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,tsv.so -o .libs/tsv.so
libtool: link: ( cd ".libs" && rm -f "tsv.la" && ln -s "../tsv.la" "tsv.la" )
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/query_expanders'
Making all in ruby
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/ruby'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/ruby'
Making all in token_filters
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/token_filters'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o stop_word.lo stop_word.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o stem_la-stem.lo `test -f 'stem.c' || echo './'`stem.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c stem.c  -fPIC -DPIC -o .libs/stem_la-stem.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c stop_word.c  -fPIC -DPIC -o .libs/stop_word.o
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o stop_word.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters stop_word.lo  ../../lib/libgroonga.la
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined  -Wl,-z,relro -Wl,-z,now -o stem.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters stem_la-stem.lo ../../lib/libgroonga.la -lstemmer ../../lib/libgroonga.la
libtool: link: gcc -shared  -fPIC -DPIC  .libs/stop_word.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,stop_word.so -o .libs/stop_word.so
libtool: link: ( cd ".libs" && rm -f "stop_word.la" && ln -s "../stop_word.la" "stop_word.la" )
libtool: link: gcc -shared  -fPIC -DPIC  .libs/stem_la-stem.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs -lstemmer ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,stem.so -o .libs/stem.so
libtool: link: ( cd ".libs" && rm -f "stem.la" && ln -s "../stem.la" "stem.la" )
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/token_filters'
Making all in sharding
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/sharding'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/sharding'
Making all in functions
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/functions'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o vector.lo vector.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o string.lo string.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o number.lo number.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o time.lo time.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c string.c  -fPIC -DPIC -o .libs/string.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c number.c  -fPIC -DPIC -o .libs/number.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c 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 -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c vector.c  -fPIC -DPIC -o .libs/vector.o
In file included from ../../include/groonga.h:22:0,
                 from ../../include/groonga/plugin.h:23,
                 from string.c:23:
string.c: In function 'func_string_substring':
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
string.c:138:12: note: in expansion of macro 'GRN_INT32_VALUE'
     from = GRN_INT32_VALUE(from_raw);
            ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
string.c:140:12: note: in expansion of macro 'GRN_INT64_VALUE'
     from = GRN_INT64_VALUE(from_raw);
            ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
string.c:148:14: note: in expansion of macro 'GRN_INT64_VALUE'
       from = GRN_INT64_VALUE(&buffer);
              ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
string.c:182:16: note: in expansion of macro 'GRN_INT32_VALUE'
       length = GRN_INT32_VALUE(length_raw);
                ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
string.c:184:16: note: in expansion of macro 'GRN_INT64_VALUE'
       length = GRN_INT64_VALUE(length_raw);
                ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
string.c:192:18: note: in expansion of macro 'GRN_INT64_VALUE'
         length = GRN_INT64_VALUE(&buffer);
                  ^~~~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../include/groonga/plugin.h:23,
                 from vector.c:23:
vector.c: In function 'func_vector_slice':
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
vector.c:133:12: note: in expansion of macro 'GRN_INT32_VALUE'
     from = GRN_INT32_VALUE(from_raw);
            ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
vector.c:135:12: note: in expansion of macro 'GRN_INT64_VALUE'
     from = GRN_INT64_VALUE(from_raw);
            ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
vector.c:143:14: note: in expansion of macro 'GRN_INT64_VALUE'
       from = GRN_INT64_VALUE(&buffer);
              ^~~~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../include/groonga/plugin.h:23,
                 from number.c:23:
number.c: In function 'func_number_classify':
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_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:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:92:18: note: in expansion of macro 'GRN_INT16_VALUE'
     number_raw = getter(number);                                        \
                  ^~~~~~
number.c:105:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_INT)
   ^~~~~~~~~~~~
number.c:127:5: note: in expansion of macro 'CLASSIFY_INT'
     CLASSIFY_INT(int16_t, GRN_INT16_VALUE, GRN_INT16_SET);
     ^~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
vector.c:178:16: note: in expansion of macro 'GRN_INT64_VALUE'
       length = GRN_INT64_VALUE(length_raw);
                ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
vector.c:186:18: note: in expansion of macro 'GRN_INT64_VALUE'
         length = GRN_INT64_VALUE(&buffer);
                  ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1465:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:93:20: note: in expansion of macro 'GRN_INT16_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:105:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_INT)
   ^~~~~~~~~~~~
number.c:127:5: note: in expansion of macro 'CLASSIFY_INT'
     CLASSIFY_INT(int16_t, GRN_INT16_VALUE, GRN_INT16_SET);
     ^~~~~~~~~~~~
../../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
vector.c:256:28: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         grn_obj *element = GRN_PTR_VALUE_AT(target, i);
                            ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
number.c:92:18: note: in expansion of macro 'GRN_UINT16_VALUE'
     number_raw = getter(number);                                        \
                  ^~~~~~
number.c:111:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_UINT)
   ^~~~~~~~~~~~
number.c:130:5: note: in expansion of macro 'CLASSIFY_UINT'
     CLASSIFY_UINT(uint16_t, GRN_UINT16_VALUE, GRN_UINT16_SET);
     ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1466:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
number.c:93:20: note: in expansion of macro 'GRN_UINT16_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:111:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_UINT)
   ^~~~~~~~~~~~
number.c:130:5: note: in expansion of macro 'CLASSIFY_UINT'
     CLASSIFY_UINT(uint16_t, GRN_UINT16_VALUE, GRN_UINT16_SET);
     ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:92:18: note: in expansion of macro 'GRN_INT32_VALUE'
     number_raw = getter(number);                                        \
                  ^~~~~~
number.c:105:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_INT)
   ^~~~~~~~~~~~
number.c:133:5: note: in expansion of macro 'CLASSIFY_INT'
     CLASSIFY_INT(int32_t, GRN_INT32_VALUE, GRN_INT32_SET);
     ^~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:93:20: note: in expansion of macro 'GRN_INT32_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:105:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_INT)
   ^~~~~~~~~~~~
number.c:133:5: note: in expansion of macro 'CLASSIFY_INT'
     CLASSIFY_INT(int32_t, GRN_INT32_VALUE, GRN_INT32_SET);
     ^~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
number.c:92:18: note: in expansion of macro 'GRN_UINT32_VALUE'
     number_raw = getter(number);                                        \
                  ^~~~~~
number.c:111:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_UINT)
   ^~~~~~~~~~~~
number.c:136:5: note: in expansion of macro 'CLASSIFY_UINT'
     CLASSIFY_UINT(uint32_t, GRN_UINT32_VALUE, GRN_UINT32_SET);
     ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
number.c:93:20: note: in expansion of macro 'GRN_UINT32_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:111:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_UINT)
   ^~~~~~~~~~~~
number.c:136:5: note: in expansion of macro 'CLASSIFY_UINT'
     CLASSIFY_UINT(uint32_t, GRN_UINT32_VALUE, GRN_UINT32_SET);
     ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:92:18: note: in expansion of macro 'GRN_INT64_VALUE'
     number_raw = getter(number);                                        \
                  ^~~~~~
number.c:105:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_INT)
   ^~~~~~~~~~~~
number.c:139:5: note: in expansion of macro 'CLASSIFY_INT'
     CLASSIFY_INT(int64_t, GRN_INT64_VALUE, GRN_INT64_SET);
     ^~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:93:20: note: in expansion of macro 'GRN_INT64_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:105:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_INT)
   ^~~~~~~~~~~~
number.c:139:5: note: in expansion of macro 'CLASSIFY_INT'
     CLASSIFY_INT(int64_t, GRN_INT64_VALUE, GRN_INT64_SET);
     ^~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../include/groonga/plugin.h:23,
                 from time.c:23:
time.c: In function 'func_time_classify_raw':
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
time.c:128:20: note: in expansion of macro 'GRN_UINT32_VALUE'
     interval_raw = GRN_UINT32_VALUE(&casted_interval);
                    ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
time.c:137:16: note: in expansion of macro 'GRN_TIME_VALUE'
     time_raw = GRN_TIME_VALUE(time);
                ^~~~~~~~~~~~~~
../../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
number.c:92:18: note: in expansion of macro 'GRN_UINT64_VALUE'
     number_raw = getter(number);                                        \
                  ^~~~~~
number.c:111:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_UINT)
   ^~~~~~~~~~~~
number.c:142:5: note: in expansion of macro 'CLASSIFY_UINT'
     CLASSIFY_UINT(uint64_t, GRN_UINT64_VALUE, GRN_UINT64_SET);
     ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
number.c:93:20: note: in expansion of macro 'GRN_UINT64_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:111:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_UINT)
   ^~~~~~~~~~~~
number.c:142:5: note: in expansion of macro 'CLASSIFY_UINT'
     CLASSIFY_UINT(uint64_t, GRN_UINT64_VALUE, GRN_UINT64_SET);
     ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:92:18: note: in expansion of macro 'GRN_FLOAT_VALUE'
     number_raw = getter(number);                                        \
                  ^~~~~~
number.c:117:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(double, getter, setter, CLASSIFIER_FLOAT)
   ^~~~~~~~~~~~
number.c:145:5: note: in expansion of macro 'CLASSIFY_FLOAT'
     CLASSIFY_FLOAT(GRN_FLOAT_VALUE, GRN_FLOAT_SET);
     ^~~~~~~~~~~~~~
../../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:93:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:117:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(double, getter, setter, CLASSIFIER_FLOAT)
   ^~~~~~~~~~~~
number.c:145:5: note: in expansion of macro 'CLASSIFY_FLOAT'
     CLASSIFY_FLOAT(GRN_FLOAT_VALUE, GRN_FLOAT_SET);
     ^~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o time.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions time.lo  ../../lib/libgroonga.la
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o string.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions string.lo  ../../lib/libgroonga.la
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o number.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions number.lo -lm ../../lib/libgroonga.la
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o vector.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions vector.lo  ../../lib/libgroonga.la
libtool: link: gcc -shared  -fPIC -DPIC  .libs/time.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,time.so -o .libs/time.so
libtool: link: gcc -shared  -fPIC -DPIC  .libs/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: gcc -shared  -fPIC -DPIC  .libs/vector.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,vector.so -o .libs/vector.so
libtool: link: ( cd ".libs" && rm -f "time.la" && ln -s "../time.la" "time.la" )
libtool: link: 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 "string.la" && ln -s "../string.la" "string.la" )
libtool: link: ( cd ".libs" && rm -f "vector.la" && ln -s "../vector.la" "vector.la" )
libtool: link: ( cd ".libs" && rm -f "number.la" && ln -s "../number.la" "number.la" )
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/functions'
Making all in expression_rewriters
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/expression_rewriters'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/expression_rewriters'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins'
Making all in src
make[3]: Entering directory '/<<PKGBUILDDIR>>/src'
Making all in suggest
make[4]: Entering directory '/<<PKGBUILDDIR>>/src/suggest'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I../.. -I. -I../../include -I../../lib    -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o libutil_la-util.lo `test -f 'util.c' || echo './'`util.c
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I../.. -I. -I../../include -I../../lib    -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o groonga_suggest_create_dataset-groonga_suggest_create_dataset.o `test -f 'groonga_suggest_create_dataset.c' || echo './'`groonga_suggest_create_dataset.c
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I../.. -I. -I../../include -I../../lib    -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o groonga_suggest_learner-groonga_suggest_learner.o `test -f 'groonga_suggest_learner.c' || echo './'`groonga_suggest_learner.c
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I../.. -I. -I../../include -I../../lib    -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o groonga_suggest_httpd-groonga_suggest_httpd.o `test -f 'groonga_suggest_httpd.c' || echo './'`groonga_suggest_httpd.c
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
groonga_suggest_learner.c: In function 'send_handler':
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:284:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(last);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:284:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(last);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:284:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(last);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:284:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(last);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:284:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(last);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:284:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(last);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:285:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(kana);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:285:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(kana);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:285:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(kana);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:285:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(kana);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:285:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(kana);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:285:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(kana);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:286:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:286:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:286:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:286:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:286:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:286:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:287:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:287:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:287:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:287:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:287:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:287:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:288:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(buzz);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:288:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(buzz);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:288:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(buzz);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:288:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(buzz);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:288:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(buzz);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:288:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(buzz);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:289:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(boost);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:289:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(boost);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:289:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(boost);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:289:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(boost);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:289:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(boost);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:289:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(boost);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:326:24: note: in expansion of macro 'GRN_INT32_VALUE'
                   if (!GRN_INT32_VALUE(&f)) {
                        ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:328:26: note: in expansion of macro 'GRN_INT32_VALUE'
                     if (!GRN_INT32_VALUE(&f)) {
                          ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:330:28: note: in expansion of macro 'GRN_INT32_VALUE'
                       if (!GRN_INT32_VALUE(&f)) { continue; }
                            ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:354:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(pre);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:354:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(pre);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:354:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(pre);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:354:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(pre);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:354:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(pre);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:354:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(pre);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:355:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(post);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:355:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(post);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:355:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(post);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:355:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(post);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:355:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(post);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:355:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(post);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:356:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq0);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:356:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq0);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:356:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq0);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:356:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq0);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:356:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq0);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:356:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq0);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:357:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq1);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:357:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq1);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:357:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq1);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:357:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq1);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:357:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq1);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:357:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq1);
                 ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
groonga_suggest_learner.c:175:31: note: in expansion of macro 'GRN_INT32_VALUE'
       msgpack_pack_int32(&pk, GRN_INT32_VALUE(&_v)); \
                               ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:358:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:178:32: note: in expansion of macro 'GRN_UINT32_VALUE'
       msgpack_pack_uint32(&pk, GRN_UINT32_VALUE(&_v)); \
                                ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:358:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_suggest_learner.c:181:40: note: in expansion of macro 'GRN_TIME_VALUE'
       msgpack_pack_double(&pk, (double)GRN_TIME_VALUE(&_v) / GRN_TIME_USEC_PER_SEC); \
                                        ^~~~~~~~~~~~~~
groonga_suggest_learner.c:358:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
groonga_suggest_learner.c:144:47: note: in definition of macro 'PACK_KEY_FROM_ID'
   _k_len = grn_table_get_key(ctx, ref_table, (id), _k_buf, GRN_TABLE_MAX_KEY_SIZE); \
                                               ^~
groonga_suggest_learner.c:184:24: note: in expansion of macro 'GRN_RECORD_VALUE'
       PACK_KEY_FROM_ID(GRN_RECORD_VALUE(&_v)); \
                        ^~~~~~~~~~~~~~~~
groonga_suggest_learner.c:358:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:22: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                      ^
groonga_suggest_learner.c:358:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
groonga_suggest_learner.c:189:61: warning: cast increases required alignment of target type [-Wcast-align]
       grn_id *_idv = (grn_id *)GRN_BULK_HEAD(&_v), *_idve = (grn_id *)GRN_BULK_CURR(&_v); \
                                                             ^
groonga_suggest_learner.c:358:17: note: in expansion of macro 'PACK_MAP_ITEM'
                 PACK_MAP_ITEM(freq2);
                 ^~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o groonga-suggest-create-dataset groonga_suggest_create_dataset-groonga_suggest_create_dataset.o ../../lib/libgroonga.la -lz -ldl -lpthread -lm  
libtool: compile:  gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -I../.. -I. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c util.c  -fPIC -DPIC -o .libs/libutil_la-util.o
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/groonga-suggest-create-dataset groonga_suggest_create_dataset-groonga_suggest_create_dataset.o  ../../lib/.libs/libgroonga.so -lz -ldl -lpthread -lm
/bin/bash ../../libtool  --tag=CC   --mode=link gcc -fno-strict-aliasing    -I../../vendor/mruby-source/include  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -no-undefined -Wl,-z,relro -Wl,-z,now -o libutil.la  libutil_la-util.lo  -lz -ldl -lpthread -lm  
libtool: link: ar cru .libs/libutil.a .libs/libutil_la-util.o 
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libutil.a
libtool: link: ( cd ".libs" && rm -f "libutil.la" && ln -s "../libutil.la" "libutil.la" )
/bin/bash ../../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o groonga-suggest-httpd groonga_suggest_httpd-groonga_suggest_httpd.o libutil.la ../../lib/libgroonga.la -levent -lzmq -lmsgpackc -lz -ldl -lpthread -lm  
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/groonga-suggest-httpd groonga_suggest_httpd-groonga_suggest_httpd.o  ./.libs/libutil.a ../../lib/.libs/libgroonga.so -levent -lzmq -lmsgpackc -lz -ldl -lpthread -lm
/bin/bash ../../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o groonga-suggest-learner groonga_suggest_learner-groonga_suggest_learner.o libutil.la ../../lib/libgroonga.la -levent -lzmq -lmsgpackc -lz -ldl -lpthread -lm  
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/groonga-suggest-learner groonga_suggest_learner-groonga_suggest_learner.o  ./.libs/libutil.a ../../lib/.libs/libgroonga.so -levent -lzmq -lmsgpackc -lz -ldl -lpthread -lm
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src/suggest'
Making all in httpd
make[4]: Entering directory '/<<PKGBUILDDIR>>/src/httpd'
(cd ../../vendor/nginx-1.11.8 && make build)
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make -f objs/Makefile
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/nginx.o \
	src/core/nginx.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_log.o \
	src/core/ngx_log.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_palloc.o \
	src/core/ngx_palloc.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_array.o \
	src/core/ngx_array.c
src/core/ngx_palloc.c: In function 'ngx_palloc_block':
src/core/ngx_palloc.c:191:11: warning: cast increases required alignment of target type [-Wcast-align]
     new = (ngx_pool_t *) m;
           ^
src/core/nginx.c: In function 'main':
src/core/nginx.c:298:34: warning: passing argument 1 of 'ngx_write_stdout' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 ngx_write_stdout("# configuration file ");
                                  ^~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:258:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stdout(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c:301:34: warning: passing argument 1 of 'ngx_write_stdout' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 ngx_write_stdout(":" NGX_LINEFEED);
                                  ^~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:258:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stdout(char *text)
 ^~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:51:0,
                 from src/core/nginx.c:9:
src/os/unix/ngx_files.h:158:34: warning: passing argument 1 of 'ngx_write_stdout' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 #define NGX_LINEFEED             "\x0a"
                                  ^
src/core/nginx.c:306:34: note: in expansion of macro 'NGX_LINEFEED'
                 ngx_write_stdout(NGX_LINEFEED);
                                  ^~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:258:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stdout(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c:321:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/core/nginx.c: In function 'ngx_show_version_info':
src/core/nginx.c:378:22: warning: passing argument 1 of 'ngx_write_stderr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_write_stderr("nginx version: " NGINX_VER_BUILD NGX_LINEFEED);
                      ^~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:251:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stderr(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c:382:13: warning: passing argument 1 of 'ngx_write_stderr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             "Usage: nginx [-?hvVtTq] [-s signal] [-c filename] "
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:251:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stderr(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c:418:30: warning: passing argument 1 of 'ngx_write_stderr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_write_stderr("built with " OPENSSL_VERSION_TEXT NGX_LINEFEED);
                              ^~~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:251:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stderr(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c:420:30: warning: passing argument 1 of 'ngx_write_stderr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_write_stderr("built with " OPENSSL_VERSION_TEXT
                              ^~~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:251:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stderr(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c:422:39: warning: cast from function call of type 'const char *' to non-matching type 'unsigned int' [-Wbad-function-cast]
             ngx_write_stderr((char *) (uintptr_t) ngx_ssl_version());
                                       ^
src/core/nginx.c:423:30: warning: passing argument 1 of 'ngx_write_stderr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_write_stderr(")" NGX_LINEFEED);
                              ^~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:251:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stderr(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c:426:26: warning: passing argument 1 of 'ngx_write_stderr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_write_stderr("TLS SNI support enabled" NGX_LINEFEED);
                          ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:251:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stderr(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c:432:26: warning: passing argument 1 of 'ngx_write_stderr' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_write_stderr("configure arguments:" NGX_CONFIGURE NGX_LINEFEED);
                          ^~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:58:0,
                 from src/core/nginx.c:9:
src/core/ngx_log.h:251:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_write_stderr(char *text)
 ^~~~~~~~~~~~~~~~
src/core/nginx.c: In function 'ngx_set_environment':
src/core/nginx.c:505:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/core/nginx.c: In function 'ngx_exec_new_binary':
src/core/nginx.c:640:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ctx.name = "new binary process";
              ^
src/core/nginx.c:672:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     env[n++] = "SPARE=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
              ^
src/core/nginx.c:693:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/core/nginx.c: In function 'ngx_core_module_init_conf':
src/core/nginx.c:1098:23: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ccf->username = NGX_USER;
                       ^
src/core/nginx.c: In function 'ngx_set_user':
src/core/nginx.c:1185:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/nginx.c: In function 'ngx_set_priority':
src/core/nginx.c:1267:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/nginx.c:1287:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid number";
                ^~~~~~~~~~~~~~~~
src/core/nginx.c: In function 'ngx_set_cpu_affinity':
src/core/nginx.c:1310:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/nginx.c: In function 'ngx_get_cpu_affinity':
src/core/nginx.c:1406:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(ngx_cycle->conf_ctx,
           ^
src/core/nginx.c: In function 'ngx_set_worker_processes':
src/core/nginx.c:1459:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/nginx.c:1472:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/nginx.c: In function 'ngx_load_module':
src/core/nginx.c:1491:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is specified too late";
                ^~~~~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_list.o \
	src/core/ngx_list.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_hash.o \
	src/core/ngx_hash.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_buf.o \
	src/core/ngx_buf.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_queue.o \
	src/core/ngx_queue.c
src/core/ngx_hash.c: In function 'ngx_hash_find':
src/core/ngx_hash.c:43:15: warning: cast increases required alignment of target type [-Wcast-align]
         elt = (ngx_hash_elt_t *) ngx_align_ptr(&elt->name[0] + elt->len,
               ^
src/core/ngx_hash.c: In function 'ngx_hash_init':
src/core/ngx_hash.c:367:19: warning: cast increases required alignment of target type [-Wcast-align]
         buckets = (ngx_hash_elt_t **)
                   ^
src/core/ngx_hash.c:391:22: warning: cast increases required alignment of target type [-Wcast-align]
         buckets[i] = (ngx_hash_elt_t *) elts;
                      ^
src/core/ngx_hash.c:405:15: warning: cast increases required alignment of target type [-Wcast-align]
         elt = (ngx_hash_elt_t *) ((u_char *) buckets[key] + test[key]);
               ^
src/core/ngx_hash.c:420:15: warning: cast increases required alignment of target type [-Wcast-align]
         elt = (ngx_hash_elt_t *) ((u_char *) buckets[i] + test[i]);
               ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_output_chain.o \
	src/core/ngx_output_chain.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_string.o \
	src/core/ngx_string.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_parse.o \
	src/core/ngx_parse.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_parse_time.o \
	src/core/ngx_parse_time.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_inet.o \
	src/core/ngx_inet.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_file.o \
	src/core/ngx_file.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_crc32.o \
	src/core/ngx_crc32.c
src/core/ngx_inet.c: In function 'ngx_sock_ntop':
src/core/ngx_inet.c:198:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) sa;
               ^
src/core/ngx_inet.c:215:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) sa;
                ^
src/core/ngx_inet.c: In function 'ngx_cidr_match':
src/core/ngx_inet.c:492:19: warning: cast increases required alignment of target type [-Wcast-align]
         inaddr = ((struct sockaddr_in *) sa)->sin_addr.s_addr;
                   ^
src/core/ngx_inet.c:497:21: warning: cast increases required alignment of target type [-Wcast-align]
         inaddr6 = &((struct sockaddr_in6 *) sa)->sin6_addr;
                     ^
src/core/ngx_inet.c: In function 'ngx_parse_addr':
src/core/ngx_inet.c:600:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) addr->sockaddr;
                ^
src/core/ngx_inet.c:606:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) addr->sockaddr;
               ^
src/core/ngx_inet.c: In function 'ngx_parse_unix_domain_url':
src/core/ngx_inet.c:726:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "no path in the unix domain socket";
                ^
src/core/ngx_inet.c:734:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "too long path in the unix domain socket";
                ^
src/core/ngx_inet.c:739:20: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     saun = (struct sockaddr_un *) &u->sockaddr;
                    ^~~~~~~~~~~
src/core/ngx_inet.c: In function 'ngx_parse_inet_url':
src/core/ngx_inet.c:788:19: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     sin = (struct sockaddr_in *) &u->sockaddr;
                   ^~~~~~~~~~~
src/core/ngx_inet.c:811:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             u->err = "invalid host";
                    ^
src/core/ngx_inet.c:833:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             u->err = "invalid port";
                    ^
src/core/ngx_inet.c:857:32: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                         u->err = "invalid port";
                                ^
src/core/ngx_inet.c:882:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "no host";
                ^
src/core/ngx_inet.c:948:24: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
         sin6 = (struct sockaddr_in6 *) &u->sockaddr;
                        ^~~~~~~~~~~~
src/core/ngx_inet.c:958:23: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
         sin = (struct sockaddr_in *) &u->sockaddr;
                       ^~~~~~~~~~~
src/core/ngx_inet.c: In function 'ngx_parse_inet6_url':
src/core/ngx_inet.c:981:20: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     sin6 = (struct sockaddr_in6 *) &u->sockaddr;
                    ^~~~~~~~~~~~
src/core/ngx_inet.c:991:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "invalid host";
                ^
src/core/ngx_inet.c:1001:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             u->err = "invalid host";
                    ^
src/core/ngx_inet.c:1013:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             u->err = "invalid host";
                    ^
src/core/ngx_inet.c:1024:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             u->err = "invalid port";
                    ^
src/core/ngx_inet.c:1043:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "no host";
                ^
src/core/ngx_inet.c:1051:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "invalid IPv6 address";
                ^
src/core/ngx_inet.c: In function 'ngx_inet_resolve_host':
src/core/ngx_inet.c:1128:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "host not found";
                ^
src/core/ngx_inet.c:1151:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "host not found";
                ^
src/core/ngx_inet.c: In function 'ngx_cmp_sockaddr':
src/core/ngx_inet.c:1380:17: warning: cast increases required alignment of target type [-Wcast-align]
         sin61 = (struct sockaddr_in6 *) sa1;
                 ^
src/core/ngx_inet.c:1381:17: warning: cast increases required alignment of target type [-Wcast-align]
         sin62 = (struct sockaddr_in6 *) sa2;
                 ^
src/core/ngx_inet.c:1420:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin1 = (struct sockaddr_in *) sa1;
                ^
src/core/ngx_inet.c:1421:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin2 = (struct sockaddr_in *) sa2;
                ^
src/core/ngx_inet.c: In function 'ngx_inet_get_port':
src/core/ngx_inet.c:1450:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) sa;
                ^
src/core/ngx_inet.c:1460:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) sa;
               ^
src/core/ngx_inet.c: In function 'ngx_inet_set_port':
src/core/ngx_inet.c:1478:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) sa;
                ^
src/core/ngx_inet.c:1489:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) sa;
               ^
src/core/ngx_file.c: In function 'ngx_conf_set_path_slot':
src/core/ngx_file.c:370:12: warning: cast increases required alignment of target type [-Wcast-align]
     slot = (ngx_path_t **) (p + cmd->offset);
            ^
src/core/ngx_file.c:373:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_file.c:399:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             return "invalid value";
                    ^~~~~~~~~~~~~~~
src/core/ngx_file.c:407:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/ngx_file.c: In function 'ngx_conf_set_access_slot':
src/core/ngx_file.c:468:14: warning: cast increases required alignment of target type [-Wcast-align]
     access = (ngx_uint_t *) (confp + cmd->offset);
              ^
src/core/ngx_file.c:471:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_murmurhash.o \
	src/core/ngx_murmurhash.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_md5.o \
	src/core/ngx_md5.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_sha1.o \
	src/core/ngx_sha1.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_rbtree.o \
	src/core/ngx_rbtree.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_radix_tree.o \
	src/core/ngx_radix_tree.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_slab.o \
	src/core/ngx_slab.c
src/core/ngx_radix_tree.c: In function 'ngx_radix_alloc':
src/core/ngx_radix_tree.c:483:9: warning: cast increases required alignment of target type [-Wcast-align]
     p = (ngx_radix_node_t *) tree->start;
         ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_times.o \
	src/core/ngx_times.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_shmtx.o \
	src/core/ngx_shmtx.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_connection.o \
	src/core/ngx_connection.c
src/core/ngx_slab.c: In function 'ngx_slab_init':
src/core/ngx_slab.c:45:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_slab_page_t *) ((u_char *) (pool) + sizeof(ngx_slab_pool_t))
     ^
src/core/ngx_slab.c:106:13: note: in expansion of macro 'ngx_slab_slots'
     slots = ngx_slab_slots(pool);
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c:124:19: warning: cast increases required alignment of target type [-Wcast-align]
     pool->stats = (ngx_slab_stat_t *) p;
                   ^
src/core/ngx_slab.c:133:19: warning: cast increases required alignment of target type [-Wcast-align]
     pool->pages = (ngx_slab_page_t *) p;
                   ^
src/core/ngx_slab.c: In function 'ngx_slab_alloc_locked':
src/core/ngx_slab.c:45:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_slab_page_t *) ((u_char *) (pool) + sizeof(ngx_slab_pool_t))
     ^
src/core/ngx_slab.c:220:13: note: in expansion of macro 'ngx_slab_slots'
     slots = ngx_slab_slots(pool);
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c:325:45: warning: passing argument 3 of 'ngx_slab_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_slab_error(pool, NGX_LOG_ALERT, "ngx_slab_alloc(): page is busy");
                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/core/ngx_slab.c:76:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_slab_error(ngx_slab_pool_t *pool, ngx_uint_t level,
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c: In function 'ngx_slab_free_locked':
src/core/ngx_slab.c:462:45: warning: passing argument 3 of 'ngx_slab_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_slab_error(pool, NGX_LOG_ALERT, "ngx_slab_free(): outside of pool");
                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/core/ngx_slab.c:76:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_slab_error(ngx_slab_pool_t *pool, ngx_uint_t level,
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c:45:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_slab_page_t *) ((u_char *) (pool) + sizeof(ngx_slab_pool_t))
     ^
src/core/ngx_slab.c:492:25: note: in expansion of macro 'ngx_slab_slots'
                 slots = ngx_slab_slots(pool);
                         ^~~~~~~~~~~~~~
src/core/ngx_slab.c:45:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_slab_page_t *) ((u_char *) (pool) + sizeof(ngx_slab_pool_t))
     ^
src/core/ngx_slab.c:544:25: note: in expansion of macro 'ngx_slab_slots'
                 slots = ngx_slab_slots(pool);
                         ^~~~~~~~~~~~~~
src/core/ngx_slab.c:45:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_slab_page_t *) ((u_char *) (pool) + sizeof(ngx_slab_pool_t))
     ^
src/core/ngx_slab.c:584:25: note: in expansion of macro 'ngx_slab_slots'
                 slots = ngx_slab_slots(pool);
                         ^~~~~~~~~~~~~~
src/core/ngx_slab.c:616:28: warning: passing argument 3 of 'ngx_slab_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "ngx_slab_free(): page is already free");
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/core/ngx_slab.c:76:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_slab_error(ngx_slab_pool_t *pool, ngx_uint_t level,
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c:622:28: warning: passing argument 3 of 'ngx_slab_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "ngx_slab_free(): pointer to wrong page");
                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/core/ngx_slab.c:76:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_slab_error(ngx_slab_pool_t *pool, ngx_uint_t level,
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c:651:20: warning: passing argument 3 of 'ngx_slab_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                    "ngx_slab_free(): pointer to wrong chunk");
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/core/ngx_slab.c:76:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_slab_error(ngx_slab_pool_t *pool, ngx_uint_t level,
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c:658:20: warning: passing argument 3 of 'ngx_slab_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                    "ngx_slab_free(): chunk is already free");
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/core/ngx_slab.c:76:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_slab_error(ngx_slab_pool_t *pool, ngx_uint_t level,
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c: In function 'ngx_slab_alloc_pages':
src/core/ngx_slab.c:715:24: warning: passing argument 3 of 'ngx_slab_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                        "ngx_slab_alloc() failed: no memory");
                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/core/ngx_slab.c:76:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_slab_error(ngx_slab_pool_t *pool, ngx_uint_t level,
             ^~~~~~~~~~~~~~
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_connection.c: In function 'ngx_clone_listening':
src/core/ngx_connection.c:109:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cf->cycle->conf_ctx,
           ^
In file included from src/core/ngx_core.h:62:0,
                 from src/core/ngx_connection.c:9:
src/core/ngx_connection.c: In function 'ngx_drain_connections':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/core/ngx_connection.c:1241:13: note: in expansion of macro 'ngx_queue_data'
         c = ngx_queue_data(q, ngx_connection_t, queue);
             ^~~~~~~~~~~~~~
src/core/ngx_connection.c: In function 'ngx_connection_local_sockaddr':
src/core/ngx_connection.c:1292:20: warning: cast increases required alignment of target type [-Wcast-align]
             sin6 = (struct sockaddr_in6 *) c->local_sockaddr;
                    ^
src/core/ngx_connection.c:1308:19: warning: cast increases required alignment of target type [-Wcast-align]
             sin = (struct sockaddr_in *) c->local_sockaddr;
                   ^
src/core/ngx_connection.c:1319:55: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_connection_error(c, ngx_socket_errno, "getsockname() failed");
                                                       ^~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/core/ngx_connection.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_cycle.o \
	src/core/ngx_cycle.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_spinlock.o \
	src/core/ngx_spinlock.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_rwlock.o \
	src/core/ngx_rwlock.c
src/core/ngx_cycle.c: In function 'ngx_init_cycle':
src/core/ngx_cycle.c:311:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/core/ngx_cycle.c:326:19: warning: cast increases required alignment of target type [-Wcast-align]
         old_ccf = (ngx_core_conf_t *) ngx_get_conf(old_cycle->conf_ctx,
                   ^
src/core/ngx_cycle.c:804:19: warning: cast increases required alignment of target type [-Wcast-align]
         old_ccf = (ngx_core_conf_t *) ngx_get_conf(old_cycle->conf_ctx,
                   ^
src/core/ngx_cycle.c: In function 'ngx_init_zone_pool':
src/core/ngx_cycle.c:876:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (ngx_slab_pool_t *) zn->shm.addr;
          ^
src/core/ngx_cycle.c: In function 'ngx_delete_pidfile':
src/core/ngx_cycle.c:986:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/core/ngx_cycle.c: In function 'ngx_signal_process':
src/core/ngx_cycle.c:1008:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_cpuinfo.o \
	src/core/ngx_cpuinfo.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_conf_file.o \
	src/core/ngx_conf_file.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_module.o \
	src/core/ngx_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_resolver.o \
	src/core/ngx_resolver.c
src/core/ngx_conf_file.c: In function 'ngx_conf_handler':
src/core/ngx_conf_file.c:455:26: warning: cast increases required alignment of target type [-Wcast-align]
                 confp = *(void **) ((char *) cf->ctx + cmd->conf);
                          ^
src/core/ngx_conf_file.c: In function 'ngx_conf_set_flag_slot':
src/core/ngx_conf_file.c:1027:10: warning: cast increases required alignment of target type [-Wcast-align]
     fp = (ngx_flag_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1030:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_str_slot':
src/core/ngx_conf_file.c:1066:13: warning: cast increases required alignment of target type [-Wcast-align]
     field = (ngx_str_t *) (p + cmd->offset);
             ^
src/core/ngx_conf_file.c:1069:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_str_array_slot':
src/core/ngx_conf_file.c:1094:9: warning: cast increases required alignment of target type [-Wcast-align]
     a = (ngx_array_t **) (p + cmd->offset);
         ^
src/core/ngx_conf_file.c: In function 'ngx_conf_set_keyval_slot':
src/core/ngx_conf_file.c:1131:9: warning: cast increases required alignment of target type [-Wcast-align]
     a = (ngx_array_t **) (p + cmd->offset);
         ^
src/core/ngx_conf_file.c: In function 'ngx_conf_set_num_slot':
src/core/ngx_conf_file.c:1169:10: warning: cast increases required alignment of target type [-Wcast-align]
     np = (ngx_int_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1172:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1178:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid number";
                ^~~~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_size_slot':
src/core/ngx_conf_file.c:1200:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (size_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1202:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1209:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_off_slot':
src/core/ngx_conf_file.c:1231:10: warning: cast increases required alignment of target type [-Wcast-align]
     op = (off_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1233:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1240:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_msec_slot':
src/core/ngx_conf_file.c:1262:11: warning: cast increases required alignment of target type [-Wcast-align]
     msp = (ngx_msec_t *) (p + cmd->offset);
           ^
src/core/ngx_conf_file.c:1264:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1271:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_sec_slot':
src/core/ngx_conf_file.c:1293:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (time_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1295:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1302:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_bufs_slot':
src/core/ngx_conf_file.c:1323:12: warning: cast increases required alignment of target type [-Wcast-align]
     bufs = (ngx_bufs_t *) (p + cmd->offset);
            ^
src/core/ngx_conf_file.c:1325:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1332:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1337:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_enum_slot':
src/core/ngx_conf_file.c:1353:10: warning: cast increases required alignment of target type [-Wcast-align]
     np = (ngx_uint_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1356:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c: In function 'ngx_conf_set_bitmask_slot':
src/core/ngx_conf_file.c:1391:10: warning: cast increases required alignment of target type [-Wcast-align]
     np = (ngx_uint_t *) (p + cmd->offset);
          ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_open_file_cache.o \
	src/core/ngx_open_file_cache.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_crypt.o \
	src/core/ngx_crypt.c
src/core/ngx_resolver.c: In function 'ngx_resolver_cleanup_tree':
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:346:14: note: in expansion of macro 'ngx_resolver_node'
         rn = ngx_resolver_node(ngx_rbtree_min(tree->root, tree->sentinel));
              ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolve_start':
src/core/ngx_resolver.c:385:43: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
             temp->addr.sockaddr = (struct sockaddr *) &temp->sin;
                                           ^~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolve_name_locked':
src/core/ngx_resolver.c:658:54: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
                         ctx->addr.sockaddr = (struct sockaddr *) &ctx->sin;
                                                      ^~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolve_addr':
src/core/ngx_resolver.c:946:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) ctx->addr.sockaddr;
                ^
src/core/ngx_resolver.c:961:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) ctx->addr.sockaddr;
               ^
In file included from src/core/ngx_core.h:62:0,
                 from src/core/ngx_resolver.c:9:
src/core/ngx_resolver.c: In function 'ngx_resolver_expire':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/core/ngx_resolver.c:1256:14: note: in expansion of macro 'ngx_queue_data'
         rn = ngx_queue_data(q, ngx_resolver_node_t, queue);
              ^~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_send_query':
src/core/ngx_resolver.c:1287:25: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         rec->log.action = "resolving";
                         ^
In file included from src/core/ngx_core.h:62:0,
                 from src/core/ngx_resolver.c:9:
src/core/ngx_resolver.c: In function 'ngx_resolver_resend':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/core/ngx_resolver.c:1521:14: note: in expansion of macro 'ngx_queue_data'
         rn = ngx_queue_data(q, ngx_resolver_node_t, queue);
              ^~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_process_response':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/core/ngx_resolver.c:1768:18: note: in expansion of macro 'ngx_queue_data'
             rn = ngx_queue_data(q, ngx_resolver_node_t, queue);
                  ^~~~~~~~~~~~~~
src/core/ngx_resolver.c:1794:13: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         err = "invalid number of questions in DNS response";
             ^
src/core/ngx_resolver.c:1813:13: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         err = "zero-length domain name in DNS response";
             ^
src/core/ngx_resolver.c:1872:9: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     err = "short DNS response";
         ^
src/core/ngx_resolver.c: In function 'ngx_resolver_process_a':
src/core/ngx_resolver.c:2147:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "invalid name in DNS response";
                 ^
src/core/ngx_resolver.c:2184:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "unexpected A record in DNS response";
                     ^
src/core/ngx_resolver.c:2189:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "invalid A record in DNS response";
                     ^
src/core/ngx_resolver.c:2205:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "unexpected AAAA record in DNS response";
                     ^
src/core/ngx_resolver.c:2210:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "invalid AAAA record in DNS response";
                     ^
src/core/ngx_resolver.c:2428:46: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
                 ctx->addr.sockaddr = (struct sockaddr *) &ctx->sin;
                                              ^~~~~~~~
src/core/ngx_resolver.c:2532:9: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     err = "short DNS response";
         ^
src/core/ngx_resolver.c: In function 'ngx_resolver_process_srv':
src/core/ngx_resolver.c:2689:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "invalid name DNS response";
                 ^
src/core/ngx_resolver.c:2917:9: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     err = "short DNS response";
         ^
src/core/ngx_resolver.c: In function 'ngx_resolver_process_ptr':
src/core/ngx_resolver.c:3261:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "invalid name in DNS response";
                 ^
src/core/ngx_resolver.c:3372:9: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     err = "short DNS response";
         ^
src/core/ngx_resolver.c: In function 'ngx_resolver_lookup_name':
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3414:14: note: in expansion of macro 'ngx_resolver_node'
         rn = ngx_resolver_node(node);
              ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_lookup_srv':
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3455:14: note: in expansion of macro 'ngx_resolver_node'
         rn = ngx_resolver_node(node);
              ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_lookup_addr':
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3494:16: note: in expansion of macro 'ngx_resolver_node'
         return ngx_resolver_node(node);
                ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_lookup_addr6':
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3530:14: note: in expansion of macro 'ngx_resolver_node'
         rn = ngx_resolver_node(node);
              ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_rbtree_insert_value':
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3568:18: note: in expansion of macro 'ngx_resolver_node'
             rn = ngx_resolver_node(node);
                  ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3569:23: note: in expansion of macro 'ngx_resolver_node'
             rn_temp = ngx_resolver_node(temp);
                       ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_rbtree_insert_addr6_value':
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3611:18: note: in expansion of macro 'ngx_resolver_node'
             rn = ngx_resolver_node(node);
                  ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:3612:23: note: in expansion of macro 'ngx_resolver_node'
             rn_temp = ngx_resolver_node(temp);
                       ^~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c: In function 'ngx_resolver_create_addr_query':
src/core/ngx_resolver.c:3907:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) addr->sockaddr;
                ^
src/core/ngx_resolver.c:3922:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) addr->sockaddr;
               ^
src/core/ngx_resolver.c: In function 'ngx_resolver_copy':
src/core/ngx_resolver.c:3977:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "name is out of response";
                 ^
src/core/ngx_resolver.c:3982:9: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     err = "compression pointers loop";
         ^
src/core/ngx_resolver.c: In function 'ngx_resolver_strerror':
src/core/ngx_resolver.c:4340:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Format error",     /* FORMERR */
         ^~~~~~~~~~~~~~
src/core/ngx_resolver.c:4341:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Server failure",   /* SERVFAIL */
         ^~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4342:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Host not found",   /* NXDOMAIN */
         ^~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4343:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Unimplemented",    /* NOTIMP */
         ^~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4344:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Operation refused" /* REFUSED */
         ^~~~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4352:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "Operation timed out";
                ^~~~~~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4355:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "Unknown error";
            ^~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:62:0,
                 from src/core/ngx_open_file_cache.c:9:
src/core/ngx_open_file_cache.c: In function 'ngx_open_file_cache_cleanup':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/core/ngx_open_file_cache.c:107:16: note: in expansion of macro 'ngx_queue_data'
         file = ngx_queue_data(q, ngx_cached_open_file_t, queue);
                ^~~~~~~~~~~~~~
src/core/ngx_open_file_cache.c: In function 'ngx_open_cached_file':
src/core/ngx_open_file_cache.c:261:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 of->failed = file->disable_symlinks ? ngx_openat_file_n
                            ^
src/core/ngx_open_file_cache.c: In function 'ngx_open_file_wrapper':
src/core/ngx_open_file_cache.c:642:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             of->failed = ngx_open_file_n;
                        ^
src/core/ngx_open_file_cache.c:667:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             of->failed = ngx_open_file_n;
                        ^
src/core/ngx_open_file_cache.c:682:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             of->failed = ngx_openat_file_n;
                        ^
src/core/ngx_open_file_cache.c:721:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             of->failed = ngx_openat_file_n;
                        ^
src/core/ngx_open_file_cache.c:765:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         of->failed = ngx_openat_file_n;
                    ^
src/core/ngx_open_file_cache.c: In function 'ngx_file_info_wrapper':
src/core/ngx_open_file_cache.c:808:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             of->failed = ngx_file_info_n;
                        ^
src/core/ngx_open_file_cache.c:826:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         of->failed = ngx_fd_info_n;
                    ^
In file included from src/core/ngx_core.h:62:0,
                 from src/core/ngx_open_file_cache.c:9:
src/core/ngx_open_file_cache.c: In function 'ngx_expire_old_cached_files':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/core/ngx_open_file_cache.c:1118:16: note: in expansion of macro 'ngx_queue_data'
         file = ngx_queue_data(q, ngx_cached_open_file_t, queue);
                ^~~~~~~~~~~~~~
src/core/ngx_open_file_cache.c: In function 'ngx_open_file_cache_rbtree_insert_value':
src/core/ngx_open_file_cache.c:1164:20: warning: cast increases required alignment of target type [-Wcast-align]
             file = (ngx_cached_open_file_t *) node;
                    ^
src/core/ngx_open_file_cache.c:1165:25: warning: cast increases required alignment of target type [-Wcast-align]
             file_temp = (ngx_cached_open_file_t *) temp;
                         ^
src/core/ngx_open_file_cache.c: In function 'ngx_open_file_lookup':
src/core/ngx_open_file_cache.c:1211:16: warning: cast increases required alignment of target type [-Wcast-align]
         file = (ngx_cached_open_file_t *) node;
                ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_proxy_protocol.o \
	src/core/ngx_proxy_protocol.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_syslog.o \
	src/core/ngx_syslog.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event.o \
	src/event/ngx_event.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_timer.o \
	src/event/ngx_event_timer.c
src/core/ngx_syslog.c:24:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
     ^~~~~~
src/core/ngx_syslog.c:24:13: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
             ^~~~~~
src/core/ngx_syslog.c:24:21: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                     ^~~~~~
src/core/ngx_syslog.c:24:29: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                             ^~~~~~~~
src/core/ngx_syslog.c:24:39: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                                       ^~~~~~
src/core/ngx_syslog.c:24:47: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                                               ^~~~~~~~
src/core/ngx_syslog.c:24:57: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                                                         ^~~~~
src/core/ngx_syslog.c:24:64: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                                                                ^~~~~~
src/core/ngx_syslog.c:24:72: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                                                                        ^~~~~~
src/core/ngx_syslog.c:25:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
     ^~~~~~~
src/core/ngx_syslog.c:25:14: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
              ^~~~~~~~~~
src/core/ngx_syslog.c:25:26: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                          ^~~~~
src/core/ngx_syslog.c:25:33: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                                 ^~~~~
src/core/ngx_syslog.c:25:40: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                                        ^~~~~~~
src/core/ngx_syslog.c:25:49: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                                                 ^~~~~~~
src/core/ngx_syslog.c:25:58: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                                                          ^~~~~~
src/core/ngx_syslog.c:25:66: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                                                                  ^~~~~~~~
src/core/ngx_syslog.c:26:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
     ^~~~~~~~
src/core/ngx_syslog.c:26:15: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
               ^~~~~~~~
src/core/ngx_syslog.c:26:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
                         ^~~~~~~~
src/core/ngx_syslog.c:26:35: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
                                   ^~~~~~~~
src/core/ngx_syslog.c:26:45: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
                                             ^~~~~~~~
src/core/ngx_syslog.c:26:55: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
                                                       ^~~~~~~~
src/core/ngx_syslog.c:26:65: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
                                                                 ^~~~~~~~
src/core/ngx_syslog.c:32:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
     ^~~~~~~
src/core/ngx_syslog.c:32:14: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
              ^~~~~~~
src/core/ngx_syslog.c:32:23: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                       ^~~~~~
src/core/ngx_syslog.c:32:31: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                               ^~~~~~~
src/core/ngx_syslog.c:32:40: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                                        ^~~~~~
src/core/ngx_syslog.c:32:48: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                                                ^~~~~~~~
src/core/ngx_syslog.c:32:58: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                                                          ^~~~~~
src/core/ngx_syslog.c:32:66: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                                                                  ^~~~~~~
src/event/ngx_event.c: In function 'ngx_event_module_init':
src/event/ngx_event.c:442:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/event/ngx_event.c:513:28: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_accept_mutex_ptr = (ngx_atomic_t *) shared;
                            ^
src/event/ngx_event.c:516:45: warning: cast increases required alignment of target type [-Wcast-align]
     if (ngx_shmtx_create(&ngx_accept_mutex, (ngx_shmtx_sh_t *) shared,
                                             ^
src/event/ngx_event.c:523:30: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_connection_counter = (ngx_atomic_t *) (shared + 1 * cl);
                              ^
src/event/ngx_event.c:531:23: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_temp_number = (ngx_atomic_t *) (shared + 2 * cl);
                       ^
src/event/ngx_event.c:539:25: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_stat_accepted = (ngx_atomic_t *) (shared + 3 * cl);
                         ^
src/event/ngx_event.c:540:24: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_stat_handled = (ngx_atomic_t *) (shared + 4 * cl);
                        ^
src/event/ngx_event.c:541:25: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_stat_requests = (ngx_atomic_t *) (shared + 5 * cl);
                         ^
src/event/ngx_event.c:542:23: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_stat_active = (ngx_atomic_t *) (shared + 6 * cl);
                       ^
src/event/ngx_event.c:543:24: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_stat_reading = (ngx_atomic_t *) (shared + 7 * cl);
                        ^
src/event/ngx_event.c:544:24: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_stat_writing = (ngx_atomic_t *) (shared + 8 * cl);
                        ^
src/event/ngx_event.c:545:24: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_stat_waiting = (ngx_atomic_t *) (shared + 9 * cl);
                        ^
src/event/ngx_event.c: In function 'ngx_event_process_init':
src/event/ngx_event.c:579:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/event/ngx_event.c: In function 'ngx_send_lowat':
src/event/ngx_event.c:894:30: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                              "setsockopt(SO_SNDLOWAT) failed");
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/event/ngx_event.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/event/ngx_event.c: In function 'ngx_events_block':
src/event/ngx_event.c:914:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/event/ngx_event.c: In function 'ngx_event_connections':
src/event/ngx_event.c:990:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/event/ngx_event.c: In function 'ngx_event_use':
src/event/ngx_event.c:1019:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_posted.o \
	src/event/ngx_event_posted.c
src/event/ngx_event_timer.c: In function 'ngx_event_expire_timers':
src/event/ngx_event_timer.c:76:14: warning: cast increases required alignment of target type [-Wcast-align]
         ev = (ngx_event_t *) ((char *) node - offsetof(ngx_event_t, timer));
              ^
src/event/ngx_event_timer.c: In function 'ngx_event_cancel_timers':
src/event/ngx_event_timer.c:116:14: warning: cast increases required alignment of target type [-Wcast-align]
         ev = (ngx_event_t *) ((char *) node - offsetof(ngx_event_t, timer));
              ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_accept.o \
	src/event/ngx_event_accept.c
In file included from src/core/ngx_core.h:62:0,
                 from src/event/ngx_event_posted.c:9:
src/event/ngx_event_posted.c: In function 'ngx_event_process_posted':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/event/ngx_event_posted.c:26:14: note: in expansion of macro 'ngx_queue_data'
         ev = ngx_queue_data(q, ngx_event_t, queue);
              ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_connect.o \
	src/event/ngx_event_connect.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_pipe.o \
	src/event/ngx_event_pipe.c
src/event/ngx_event_accept.c: In function 'ngx_event_recvmsg':
src/event/ngx_event_accept.c:524:27: warning: cast increases required alignment of target type [-Wcast-align]
                     pkt = (struct in_pktinfo *) CMSG_DATA(cmsg);
                           ^
src/event/ngx_event_accept.c:524:35: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
                     pkt = (struct in_pktinfo *) CMSG_DATA(cmsg);
                                   ^~~~~~~~~~
src/event/ngx_event_accept.c:525:27: warning: cast increases required alignment of target type [-Wcast-align]
                     sin = (struct sockaddr_in *) sockaddr;
                           ^
src/event/ngx_event_accept.c:542:28: warning: cast increases required alignment of target type [-Wcast-align]
                     pkt6 = (struct in6_pktinfo *) CMSG_DATA(cmsg);
                            ^
src/event/ngx_event_accept.c:542:36: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
                     pkt6 = (struct in6_pktinfo *) CMSG_DATA(cmsg);
                                    ^~~~~~~~~~~
src/event/ngx_event_accept.c:543:28: warning: cast increases required alignment of target type [-Wcast-align]
                     sin6 = (struct sockaddr_in6 *) sockaddr;
                            ^
src/event/ngx_event_pipe.c: In function 'ngx_event_pipe':
src/event/ngx_event_pipe.c:31:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             p->log->action = "sending to client";
                            ^
src/event/ngx_event_pipe.c:47:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p->log->action = "reading upstream";
                        ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_time.o \
	src/os/unix/ngx_time.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_errno.o \
	src/os/unix/ngx_errno.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_alloc.o \
	src/os/unix/ngx_alloc.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_files.o \
	src/os/unix/ngx_files.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_socket.o \
	src/os/unix/ngx_socket.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_recv.o \
	src/os/unix/ngx_recv.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_readv_chain.o \
	src/os/unix/ngx_readv_chain.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_udp_recv.o \
	src/os/unix/ngx_udp_recv.c
src/os/unix/ngx_recv.c: In function 'ngx_unix_recv':
src/os/unix/ngx_recv.c:154:46: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             n = ngx_connection_error(c, err, "recv() failed");
                                              ^~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_recv.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_send.o \
	src/os/unix/ngx_send.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_writev_chain.o \
	src/os/unix/ngx_writev_chain.c
src/os/unix/ngx_readv_chain.c: In function 'ngx_readv_chain':
src/os/unix/ngx_readv_chain.c:201:46: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             n = ngx_connection_error(c, err, "readv() failed");
                                              ^~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_readv_chain.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/os/unix/ngx_udp_recv.c: In function 'ngx_udp_unix_recv':
src/os/unix/ngx_udp_recv.c:59:46: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             n = ngx_connection_error(c, err, "recv() failed");
                                              ^~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_udp_recv.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_udp_send.o \
	src/os/unix/ngx_udp_send.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_udp_sendmsg_chain.o \
	src/os/unix/ngx_udp_sendmsg_chain.c
src/os/unix/ngx_send.c: In function 'ngx_unix_send':
src/os/unix/ngx_send.c:69:49: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             (void) ngx_connection_error(c, err, "send() failed");
                                                 ^~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_send.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_channel.o \
	src/os/unix/ngx_channel.c
src/os/unix/ngx_writev_chain.c: In function 'ngx_writev':
src/os/unix/ngx_writev_chain.c:210:42: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_connection_error(c, err, "writev() failed");
                                          ^~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_writev_chain.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_shmem.o \
	src/os/unix/ngx_shmem.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:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/os/unix/ngx_udp_send.c:52:49: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             (void) ngx_connection_error(c, err, "sendto() failed");
                                                 ^~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_udp_send.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_process.o \
	src/os/unix/ngx_process.c
src/os/unix/ngx_udp_sendmsg_chain.c: In function 'ngx_sendmsg':
src/os/unix/ngx_udp_sendmsg_chain.c:239:42: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_connection_error(c, err, "sendmsg() failed");
                                          ^~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_udp_sendmsg_chain.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_daemon.o \
	src/os/unix/ngx_daemon.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_setaffinity.o \
	src/os/unix/ngx_setaffinity.c
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]
       "",
       ^~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_setproctitle.o \
	src/os/unix/ngx_setproctitle.c
src/os/unix/ngx_process.c:56:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "SIG" ngx_value(NGX_TERMINATE_SIGNAL),
       ^~~~~
src/os/unix/ngx_process.c:57:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "stop",
       ^~~~~~
src/os/unix/ngx_process.c:61:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "SIG" ngx_value(NGX_SHUTDOWN_SIGNAL),
       ^~~~~
src/os/unix/ngx_process.c:62:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "quit",
       ^~~~~~
src/os/unix/ngx_process.c:66:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "SIG" ngx_value(NGX_CHANGEBIN_SIGNAL),
       ^~~~~
src/os/unix/ngx_process.c:67:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "",
       ^~
src/os/unix/ngx_process.c:70:16: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGALRM, "SIGALRM", "", ngx_signal_handler },
                ^~~~~~~~~
src/os/unix/ngx_process.c:70:27: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGALRM, "SIGALRM", "", ngx_signal_handler },
                           ^~
src/os/unix/ngx_process.c:72:15: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGINT, "SIGINT", "", ngx_signal_handler },
               ^~~~~~~~
src/os/unix/ngx_process.c:72:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGINT, "SIGINT", "", ngx_signal_handler },
                         ^~
src/os/unix/ngx_process.c:74:14: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGIO, "SIGIO", "", ngx_signal_handler },
              ^~~~~~~
src/os/unix/ngx_process.c:74:23: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGIO, "SIGIO", "", ngx_signal_handler },
                       ^~
src/os/unix/ngx_process.c:76:16: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGCHLD, "SIGCHLD", "", ngx_signal_handler },
                ^~~~~~~~~
src/os/unix/ngx_process.c:76:27: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGCHLD, "SIGCHLD", "", ngx_signal_handler },
                           ^~
src/os/unix/ngx_process.c:78:15: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGSYS, "SIGSYS, SIG_IGN", "", SIG_IGN },
               ^~~~~~~~~~~~~~~~~
src/os/unix/ngx_process.c:78:34: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGSYS, "SIGSYS, SIG_IGN", "", SIG_IGN },
                                  ^~
src/os/unix/ngx_process.c:80:16: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGPIPE, "SIGPIPE, SIG_IGN", "", SIG_IGN },
                ^~~~~~~~~~~~~~~~~~
src/os/unix/ngx_process.c:80:36: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGPIPE, "SIGPIPE, SIG_IGN", "", SIG_IGN },
                                    ^~
src/os/unix/ngx_process.c:82:16: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { 0, NULL, "", NULL }
                ^~
src/os/unix/ngx_process.c: In function 'ngx_signal_handler':
src/os/unix/ngx_process.c:329:12: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     action = "";
            ^
src/os/unix/ngx_process.c:339:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", shutting down";
                    ^
src/os/unix/ngx_process.c:345:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", exiting";
                    ^
src/os/unix/ngx_process.c:351:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 action = ", stop accepting connections";
                        ^
src/os/unix/ngx_process.c:357:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", reconfiguring";
                    ^
src/os/unix/ngx_process.c:362:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", reopening logs";
                    ^
src/os/unix/ngx_process.c:375:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 action = ", ignoring";
                        ^
src/os/unix/ngx_process.c:381:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", changing binary";
                    ^
src/os/unix/ngx_process.c:410:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", shutting down";
                    ^
src/os/unix/ngx_process.c:416:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", exiting";
                    ^
src/os/unix/ngx_process.c:421:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", reopening logs";
                    ^
src/os/unix/ngx_process.c:427:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", ignoring";
                    ^
src/os/unix/ngx_process.c: In function 'ngx_process_get_status':
src/os/unix/ngx_process.c:504:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         process = "unknown process";
                 ^
src/os/unix/ngx_process.c: In function 'ngx_unlock_mutexes':
src/os/unix/ngx_process.c:582:14: warning: cast increases required alignment of target type [-Wcast-align]
         sp = (ngx_slab_pool_t *) shm_zone[i].shm.addr;
              ^
src/os/unix/ngx_process.c: In function 'ngx_debug_point':
src/os/unix/ngx_process.c:598:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(ngx_cycle->conf_ctx,
           ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_posix_init.o \
	src/os/unix/ngx_posix_init.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_user.o \
	src/os/unix/ngx_user.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_dlopen.o \
	src/os/unix/ngx_dlopen.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_process_cycle.o \
	src/os/unix/ngx_process_cycle.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_linux_init.o \
	src/os/unix/ngx_linux_init.c
src/os/unix/ngx_dlopen.c: In function 'ngx_dlerror':
src/os/unix/ngx_dlopen.c:22:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "";
                ^~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/modules/ngx_epoll_module.o \
	src/event/modules/ngx_epoll_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_linux_sendfile_chain.o \
	src/os/unix/ngx_linux_sendfile_chain.c
src/os/unix/ngx_process_cycle.c:59:40: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_cache_manager_process_handler, "cache manager process", 0
                                        ^~~~~~~~~~~~~~~~~~~~~~~
src/os/unix/ngx_process_cycle.c:63:39: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_cache_loader_process_handler, "cache loader process", 60000
                                       ^~~~~~~~~~~~~~~~~~~~~~
src/os/unix/ngx_process_cycle.c: In function 'ngx_master_process_cycle':
src/os/unix/ngx_process_cycle.c:128:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/os/unix/ngx_process_cycle.c:241:19: warning: cast increases required alignment of target type [-Wcast-align]
             ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx,
                   ^
src/os/unix/ngx_process_cycle.c: In function 'ngx_start_worker_processes':
src/os/unix/ngx_process_cycle.c:359:50: warning: passing argument 4 of 'ngx_spawn_process' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           (void *) (intptr_t) i, "worker process", type);
                                                  ^~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:53:0,
                 from src/os/unix/ngx_process_cycle.c:9:
src/os/unix/ngx_process.h:63:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_pid_t ngx_spawn_process(ngx_cycle_t *cycle,
           ^~~~~~~~~~~~~~~~~
src/os/unix/ngx_process_cycle.c: In function 'ngx_start_cache_manager_processes':
src/os/unix/ngx_process_cycle.c:397:47: warning: passing argument 4 of 'ngx_spawn_process' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       &ngx_cache_manager_ctx, "cache manager process",
                                               ^~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:53:0,
                 from src/os/unix/ngx_process_cycle.c:9:
src/os/unix/ngx_process.h:63:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_pid_t ngx_spawn_process(ngx_cycle_t *cycle,
           ^~~~~~~~~~~~~~~~~
src/os/unix/ngx_process_cycle.c:414:46: warning: passing argument 4 of 'ngx_spawn_process' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       &ngx_cache_loader_ctx, "cache loader process",
                                              ^~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:53:0,
                 from src/os/unix/ngx_process_cycle.c:9:
src/os/unix/ngx_process.h:63:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_pid_t ngx_spawn_process(ngx_cycle_t *cycle,
           ^~~~~~~~~~~~~~~~~
src/os/unix/ngx_process_cycle.c: In function 'ngx_reap_children':
src/os/unix/ngx_process_cycle.c:647:23: warning: cast increases required alignment of target type [-Wcast-align]
                 ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx,
                       ^
src/os/unix/ngx_process_cycle.c: In function 'ngx_worker_process_cycle':
src/os/unix/ngx_process_cycle.c:736:22: warning: passing argument 1 of 'ngx_setproctitle' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_setproctitle("worker process");
                      ^~~~~~~~~~~~~~~~
In file included from src/os/unix/ngx_process.h:13:0,
                 from src/core/ngx_core.h:53,
                 from src/os/unix/ngx_process_cycle.c:9:
src/os/unix/ngx_setproctitle.h:38:6: note: expected 'char *' but argument is of type 'const char *'
 void ngx_setproctitle(char *title);
      ^~~~~~~~~~~~~~~~
src/os/unix/ngx_process_cycle.c:765:30: warning: passing argument 1 of 'ngx_setproctitle' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_setproctitle("worker process is shutting down");
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/os/unix/ngx_process.h:13:0,
                 from src/core/ngx_core.h:53,
                 from src/os/unix/ngx_process_cycle.c:9:
src/os/unix/ngx_setproctitle.h:38:6: note: expected 'char *' but argument is of type 'const char *'
 void ngx_setproctitle(char *title);
      ^~~~~~~~~~~~~~~~
src/os/unix/ngx_process_cycle.c: In function 'ngx_worker_process_init':
src/os/unix/ngx_process_cycle.c:800:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_openssl.o \
	src/event/ngx_event_openssl.c
src/os/unix/ngx_linux_sendfile_chain.c: In function 'ngx_linux_sendfile_chain':
src/os/unix/ngx_linux_sendfile_chain.c:127:46: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                              "setsockopt(TCP_NODELAY) failed");
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_linux_sendfile_chain.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:49:0,
                 from src/os/unix/ngx_linux_sendfile_chain.c:9:
src/os/unix/ngx_socket.h:46:28: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 #define ngx_tcp_nopush_n   "setsockopt(TCP_CORK)"
                            ^
src/os/unix/ngx_linux_sendfile_chain.c:152:46: note: in expansion of macro 'ngx_tcp_nopush_n'
                                              ngx_tcp_nopush_n " failed");
                                              ^~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_linux_sendfile_chain.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/os/unix/ngx_linux_sendfile_chain.c: In function 'ngx_linux_sendfile':
src/os/unix/ngx_linux_sendfile_chain.c:290:42: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_connection_error(c, err, "sendfile() failed");
                                          ^~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_linux_sendfile_chain.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_openssl_stapling.o \
	src/event/ngx_event_openssl_stapling.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_regex.o \
	src/core/ngx_regex.c
src/event/ngx_event_openssl.c: In function 'ngx_ssl_init':
src/event/ngx_event_openssl.c:160:46: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, log, 0, "SSL_get_ex_new_index() failed");
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:168:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_get_ex_new_index() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:176:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_get_ex_new_index() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:184:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_get_ex_new_index() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:192:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_get_ex_new_index() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:199:46: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, log, 0, "X509_get_ex_new_index() failed");
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:207:46: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, log, 0, "X509_get_ex_new_index() failed");
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:214:46: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, log, 0, "X509_get_ex_new_index() failed");
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_create':
src/event/ngx_event_openssl.c:228:51: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_EMERG, ssl->log, 0, "SSL_CTX_new() failed");
                                                   ^~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:234:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_set_ex_data() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:240:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_set_ex_data() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_certificate':
src/event/ngx_event_openssl.c:383:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "BIO_new_file(\"%s\") failed", cert->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:390:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "PEM_read_bio_X509_AUX(\"%s\") failed", cert->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:397:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_use_certificate(\"%s\") failed", cert->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:406:51: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_EMERG, ssl->log, 0, "X509_set_ex_data() failed");
                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:416:51: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_EMERG, ssl->log, 0, "X509_set_ex_data() failed");
                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:426:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_set_ex_data() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:451:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "PEM_read_bio_X509(\"%s\") failed", cert->data);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:466:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "SSL_CTX_add0_chain_cert(\"%s\") failed",
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:510:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "ENGINE_by_id(\"%s\") failed", p);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:520:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "ENGINE_load_private_key(\"%s\") failed", last);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:529:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "SSL_CTX_use_PrivateKey(\"%s\") failed", last);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:582:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_use_PrivateKey_file(\"%s\") failed", key->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_ciphers':
src/event/ngx_event_openssl.c:622:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_set_cipher_list(\"%V\") failed",
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_client_certificate':
src/event/ngx_event_openssl.c:662:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_load_verify_locations(\"%s\") failed",
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:678:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_load_client_CA_file(\"%s\") failed", cert->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_trusted_certificate':
src/event/ngx_event_openssl.c:713:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_load_verify_locations(\"%s\") failed",
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_crl':
src/event/ngx_event_openssl.c:747:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_get_cert_store() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:755:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "X509_STORE_add_lookup() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:763:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "X509_LOOKUP_load_file(\"%s\") failed", crl->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_dhparam':
src/event/ngx_event_openssl.c:1041:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "BIO_new_file(\"%s\") failed", file->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:1048:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "PEM_read_bio_DHparams(\"%s\") failed", file->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_ecdh_curve':
src/event/ngx_event_openssl.c:1102:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_set1_curves_list(\"%s\") failed", name->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_create_connection':
src/event/ngx_event_openssl.c:1164:49: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "SSL_new() failed");
                                                 ^~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:1169:49: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "SSL_set_fd() failed");
                                                 ^~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:1181:49: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "SSL_set_ex_data() failed");
                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_set_session':
src/event/ngx_event_openssl.c:1196:53: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "SSL_set_session() failed");
                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_handshake':
src/event/ngx_event_openssl.c:1339:30: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                              "peer closed connection in SSL handshake");
                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/event/ngx_event_openssl.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:1346:46: warning: passing argument 4 of 'ngx_ssl_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_ssl_connection_error(c, sslerr, err, "SSL_do_handshake() failed");
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:32:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_ssl_connection_error(ngx_connection_t *c, int sslerr,
             ^~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_handle_recv':
src/event/ngx_event_openssl.c:1529:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "ignoring stale global SSL error");
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:1601:46: warning: passing argument 4 of 'ngx_ssl_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_ssl_connection_error(c, sslerr, err, "SSL_read() failed");
                                              ^~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:32:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_ssl_connection_error(ngx_connection_t *c, int sslerr,
             ^~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_write':
src/event/ngx_event_openssl.c:1854:46: warning: passing argument 4 of 'ngx_ssl_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_ssl_connection_error(c, sslerr, err, "SSL_write() failed");
                                              ^~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:32:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_ssl_connection_error(ngx_connection_t *c, int sslerr,
             ^~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_shutdown':
src/event/ngx_event_openssl.c:1968:46: warning: passing argument 4 of 'ngx_ssl_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_ssl_connection_error(c, sslerr, err, "SSL_shutdown() failed");
                                              ^~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:32:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_ssl_connection_error(ngx_connection_t *c, int sslerr,
             ^~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_clear_error':
src/event/ngx_event_openssl.c:2131:46: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, log, 0, "ignoring stale global SSL error");
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_session_cache':
src/event/ngx_event_openssl.c:2256:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "SSL_CTX_set_ex_data() failed");
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_session_id_context':
src/event/ngx_event_openssl.c:2288:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "EVP_DigestInit_ex() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2294:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "EVP_DigestUpdate() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2304:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "X509_digest() failed");
                           ^~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2310:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "EVP_DigestUpdate() failed");
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2325:31: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                               "X509_NAME_digest() failed");
                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2331:31: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                               "EVP_DigestUpdate() failed");
                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2339:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "EVP_DigestUpdate() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2347:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_set_session_id_context() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_session_cache_init':
src/event/ngx_event_openssl.c:2373:14: warning: cast increases required alignment of target type [-Wcast-align]
     shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
              ^
src/event/ngx_event_openssl.c: In function 'ngx_ssl_new_session':
src/event/ngx_event_openssl.c:2458:14: warning: cast increases required alignment of target type [-Wcast-align]
     shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
              ^
src/event/ngx_event_openssl.c: In function 'ngx_ssl_get_cached_session':
src/event/ngx_event_openssl.c:2612:14: warning: cast increases required alignment of target type [-Wcast-align]
     shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
              ^
src/event/ngx_event_openssl.c: In function 'ngx_ssl_remove_session':
src/event/ngx_event_openssl.c:2723:14: warning: cast increases required alignment of target type [-Wcast-align]
     shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
              ^
In file included from src/core/ngx_core.h:62:0,
                 from src/event/ngx_event_openssl.c:9:
src/event/ngx_event_openssl.c: In function 'ngx_ssl_expire_sessions':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/event/ngx_event_openssl.c:2790:19: note: in expansion of macro 'ngx_queue_data'
         sess_id = ngx_queue_data(q, ngx_ssl_sess_id_t, queue);
                   ^~~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_session_ticket_keys':
src/event/ngx_event_openssl.c:2954:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_set_ex_data() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_session_ticket_key_callback':
src/event/ngx_event_openssl.c:3033:53: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "RAND_bytes() failed");
                                                     ^~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:3039:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "EVP_EncryptInit_ex() failed");
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:3045:53: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "HMAC_Init_ex() failed");
                                                     ^~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:3089:53: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "HMAC_Init_ex() failed");
                                                     ^~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:3098:27: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                           "EVP_DecryptInit_ex() failed");
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_ssl_get_raw_certificate':
src/event/ngx_event_openssl.c:3566:49: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "BIO_new() failed");
                                                 ^~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:3572:49: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "PEM_write_bio_X509() failed");
                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c: In function 'ngx_openssl_engine':
src/event/ngx_event_openssl.c:4143:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:4154:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "ENGINE_by_id(\"%V\") failed", &value[1]);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:4160:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "ENGINE_set_default(\"%V\", ENGINE_METHOD_ALL) failed",
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2139:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http.o \
	src/http/ngx_http.c
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_stapling_certificate':
src/event/ngx_event_openssl_stapling.c:172:51: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_ssl_error(NGX_LOG_EMERG, ssl->log, 0, "X509_set_ex_data() failed");
                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_stapling_file':
src/event/ngx_event_openssl_stapling.c:233:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "BIO_new_file(\"%s\") failed", file->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:240:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "d2i_OCSP_RESPONSE_bio(\"%s\") failed", file->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:248:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "i2d_OCSP_RESPONSE(\"%s\") failed", file->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:261:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "i2d_OCSP_RESPONSE(\"%s\") failed", file->data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_stapling_issuer':
src/event/ngx_event_openssl_stapling.c:334:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_get_cert_store() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:341:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "X509_STORE_CTX_new() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:347:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "X509_STORE_CTX_init() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:356:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "X509_STORE_CTX_get1_issuer() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_certificate_status_callback':
src/event/ngx_event_openssl_stapling.c:527:53: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_ssl_error(NGX_LOG_ALERT, c->log, 0, "OPENSSL_malloc() failed");
                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_stapling_ocsp_handler':
src/event/ngx_event_openssl_stapling.c:621:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "d2i_OCSP_RESPONSE() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:637:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "OCSP_response_get1_basic() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:644:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_CTX_get_cert_store() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:665:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "OCSP_basic_verify() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:672:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "OCSP_cert_to_id() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:694:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "OCSP_check_validity() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_ocsp_start':
src/event/ngx_event_openssl_stapling.c:854:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "requesting certificate status";
                 ^
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_ocsp_create_request':
src/event/ngx_event_openssl_stapling.c:1216:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "OCSP_REQUEST_new() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:1223:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "OCSP_cert_to_id() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:1229:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "OCSP_request_add0_id() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:1237:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "i2d_OCSP_REQUEST() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:1251:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "i2d_OCSP_REQUEST() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/event/ngx_event_openssl_stapling.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c:1293:13: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
         p = (u_char *) ngx_escape_uri(p, base64.data, base64.len,
             ^
src/core/ngx_regex.c: In function 'ngx_regex_compile':
src/core/ngx_regex.c:149:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "pcre_fullinfo(\"%V\", PCRE_INFO_CAPTURECOUNT) failed: %d";
           ^
src/core/ngx_regex.c:159:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "pcre_fullinfo(\"%V\", PCRE_INFO_NAMECOUNT) failed: %d";
           ^
src/core/ngx_regex.c:169:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "pcre_fullinfo(\"%V\", PCRE_INFO_NAMEENTRYSIZE) failed: %d";
           ^
src/core/ngx_regex.c:175:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "pcre_fullinfo(\"%V\", PCRE_INFO_NAMETABLE) failed: %d";
           ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_core_module.o \
	src/http/ngx_http_core_module.c
src/http/ngx_http.c: In function 'ngx_http_block':
src/http/ngx_http.c:132:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http.c: In function 'ngx_http_init_headers_in_hash':
src/http/ngx_http.c:432:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "headers_in_hash";
               ^
src/http/ngx_http.c: In function 'ngx_http_server_names':
src/http/ngx_http.c:1493:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "server_names_hash";
               ^
src/http/ngx_http.c: In function 'ngx_http_types_slot':
src/http/ngx_http.c:1922:13: warning: cast increases required alignment of target type [-Wcast-align]
     types = (ngx_array_t **) (p + cmd->offset);
             ^
src/http/ngx_http.c: In function 'ngx_http_merge_types':
src/http/ngx_http.c:2006:19: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         hash.name = "test_types_hash";
                   ^
src/http/ngx_http.c:2036:19: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         hash.name = "test_types_hash";
                   ^
src/http/ngx_http_core_module.c: In function 'ngx_http_core_try_files_phase':
src/http/ngx_http_core_module.c:1198:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/ngx_http_core_module.c:1199:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) e.ip;
                          ^
src/http/ngx_http_core_module.c:1243:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/ngx_http_core_module.c:1244:25: warning: cast increases required alignment of target type [-Wcast-align]
                 code = *(ngx_http_script_code_pt *) e.ip;
                         ^
src/http/ngx_http_core_module.c: In function 'ngx_http_gzip_accept_encoding':
src/http/ngx_http_core_module.c:2308:36: warning: passing argument 2 of 'ngx_strcasestrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = ngx_strcasestrn(start, "gzip", 4 - 1);
                                    ^~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_core_module.c:9:
src/core/ngx_string.h:163:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strcasestrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_merge_loc_conf':
src/http/ngx_http_core_module.c:3674:25: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         types_hash.name = "types_hash";
                         ^
src/http/ngx_http_core_module.c:3716:25: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         types_hash.name = "types_hash";
                         ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_special_response.o \
	src/http/ngx_http_special_response.c
src/http/ngx_http_core_module.c: In function 'ngx_http_core_limit_except':
src/http/ngx_http_core_module.c:4510:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "duplicate";
                ^~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_set_aio':
src/http/ngx_http_core_module.c:4602:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:4700:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "invalid value";
            ^~~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_directio':
src/http/ngx_http_core_module.c:4712:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:4724:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_try_files':
src/http/ngx_http_core_module.c:4862:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_open_file_cache':
src/http/ngx_http_core_module.c:4943:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_keepalive':
src/http/ngx_http_core_module.c:5027:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:5035:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:5045:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_internal':
src/http/ngx_http_core_module.c:5058:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_core_resolver':
src/http/ngx_http_core_module.c:5075:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c: In function 'ngx_http_disable_symlinks':
src/http/ngx_http_core_module.c:5203:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_special_response.c: In function 'ngx_http_send_refresh':
src/http/ngx_http_special_response.c:788:13: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
         p = (u_char *) ngx_escape_uri(p, location, len, NGX_ESCAPE_REFRESH);
             ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_request.o \
	src/http/ngx_http_request.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_parse.o \
	src/http/ngx_http_parse.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_log_module.o \
	src/http/modules/ngx_http_log_module.c
src/http/ngx_http_request.c:70:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "client sent invalid method",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_request.c:73:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "client sent invalid request",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_request.c:76:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "client sent invalid method in HTTP/0.9 request"
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_request.c: In function 'ngx_http_init_connection':
src/http/ngx_http_request.c:242:20: warning: cast increases required alignment of target type [-Wcast-align]
             sin6 = (struct sockaddr_in6 *) c->local_sockaddr;
                    ^
src/http/ngx_http_request.c:260:19: warning: cast increases required alignment of target type [-Wcast-align]
             sin = (struct sockaddr_in *) c->local_sockaddr;
                   ^
src/http/ngx_http_request.c:311:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "waiting for request";
                    ^
src/http/ngx_http_request.c:333:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "SSL handshaking";
                        ^
src/http/ngx_http_request.c:352:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "reading PROXY protocol";
                        ^
src/http/ngx_http_request.c: In function 'ngx_http_wait_request_handler':
src/http/ngx_http_request.c:484:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             c->log->action = "waiting for request";
                            ^
src/http/ngx_http_request.c:492:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "reading client request line";
                    ^
src/http/ngx_http_request.c: In function 'ngx_http_ssl_handshake':
src/http/ngx_http_request.c:673:38: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_connection_error(c, err, "recv() failed");
                                      ^~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_request.c:696:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "SSL handshaking";
                        ^
src/http/ngx_http_request.c:743:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "waiting for request";
                        ^
src/http/ngx_http_request.c: In function 'ngx_http_ssl_handshake_handler':
src/http/ngx_http_request.c:804:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "waiting for request";
                        ^
src/http/ngx_http_request.c: In function 'ngx_http_process_request_line':
src/http/ngx_http_request.c:1023:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             c->log->action = "reading client request headers";
                            ^
src/http/ngx_http_request.c: In function 'ngx_http_read_request_header':
src/http/ngx_http_request.c:1414:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "reading client request headers";
                        ^
src/http/ngx_http_request.c: In function 'ngx_http_process_header_line':
src/http/ngx_http_request.c:1576:10: warning: cast increases required alignment of target type [-Wcast-align]
     ph = (ngx_table_elt_t **) ((char *) &r->headers_in + offset);
          ^
src/http/ngx_http_request.c: In function 'ngx_http_process_unique_header_line':
src/http/ngx_http_request.c:1592:10: warning: cast increases required alignment of target type [-Wcast-align]
     ph = (ngx_table_elt_t **) ((char *) &r->headers_in + offset);
          ^
src/http/ngx_http_request.c: In function 'ngx_http_process_connection':
src/http/ngx_http_request.c:1655:40: warning: passing argument 2 of 'ngx_strcasestrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     if (ngx_strcasestrn(h->value.data, "close", 5 - 1)) {
                                        ^~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:163:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strcasestrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~~~~~
src/http/ngx_http_request.c:1658:47: warning: passing argument 2 of 'ngx_strcasestrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     } else if (ngx_strcasestrn(h->value.data, "keep-alive", 10 - 1)) {
                                               ^~~~~~~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:163:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strcasestrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~~~~~
src/http/ngx_http_request.c: In function 'ngx_http_process_user_agent':
src/http/ngx_http_request.c:1682:36: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     msie = ngx_strstrn(user_agent, "MSIE ", 5 - 1);
                                    ^~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c:1696:43: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 if (ngx_strstrn(msie + 8, "SV1", 3 - 1) == NULL) {
                                           ^~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c:1711:33: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     if (ngx_strstrn(user_agent, "Opera", 5 - 1)) {
                                 ^~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c:1719:37: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         if (ngx_strstrn(user_agent, "Gecko/", 6 - 1)) {
                                     ^~~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c:1722:44: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         } else if (ngx_strstrn(user_agent, "Chrome/", 7 - 1)) {
                                            ^~~~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c:1725:44: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         } else if (ngx_strstrn(user_agent, "Safari/", 7 - 1)
                                            ^~~~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c:1726:47: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                    && ngx_strstrn(user_agent, "Mac OS X", 8 - 1))
                                               ^~~~~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c:1730:44: warning: passing argument 2 of 'ngx_strstrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         } else if (ngx_strstrn(user_agent, "Konqueror", 9 - 1)) {
                                            ^~~~~~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_string.h:162:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strstrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~
src/http/ngx_http_request.c: In function 'ngx_http_process_multi_header_lines':
src/http/ngx_http_request.c:1746:15: warning: cast increases required alignment of target type [-Wcast-align]
     headers = (ngx_array_t *) ((char *) &r->headers_in + offset);
               ^
src/http/ngx_http_request.c: In function 'ngx_http_set_keepalive':
src/http/ngx_http_request.c:2858:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "closing request";
                    ^
src/http/ngx_http_request.c:2920:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "reading client pipelined request line";
                        ^
src/http/ngx_http_request.c:3006:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "keepalive";
                    ^
In file included from src/core/ngx_core.h:49:0,
                 from src/http/ngx_http_request.c:9:
src/os/unix/ngx_socket.h:47:28: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 #define ngx_tcp_push_n     "setsockopt(!TCP_CORK)"
                            ^
src/http/ngx_http_request.c:3010:55: note: in expansion of macro 'ngx_tcp_push_n'
             ngx_connection_error(c, ngx_socket_errno, ngx_tcp_push_n " failed");
                                                       ^~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_request.c:3038:34: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                  "setsockopt(TCP_NODELAY) failed");
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_request.c: In function 'ngx_http_keepalive_handler':
src/http/ngx_http_request.c:3174:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "reading client request line";
                    ^
In file included from src/core/ngx_core.h:49:0,
                 from src/http/ngx_http_request.c:9:
src/http/ngx_http_request.c: In function 'ngx_http_set_lingering_close':
src/os/unix/ngx_socket.h:58:32: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 #define ngx_shutdown_socket_n  "shutdown()"
                                ^
src/http/ngx_http_request.c:3229:30: note: in expansion of macro 'ngx_shutdown_socket_n'
                              ngx_shutdown_socket_n " failed");
                              ^~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_request.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_request.c: In function 'ngx_http_free_request':
src/http/ngx_http_request.c:3464:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "logging request";
                 ^
src/http/ngx_http_request.c:3468:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "closing request";
                 ^
src/http/ngx_http_request.c: In function 'ngx_http_log_error_handler':
src/http/ngx_http_request.c:3631:23: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         uri_separator = "";
                       ^
src/http/ngx_http_request.c:3635:27: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             uri_separator = ":";
                           ^
src/http/modules/ngx_http_log_module.c: In function 'ngx_http_log_variable':
src/http/modules/ngx_http_log_module.c:978:16: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
         return (u_char *) ngx_http_log_escape(buf, value->data, value->len);
                ^
src/http/modules/ngx_http_log_module.c: In function 'ngx_http_log_json_variable':
src/http/modules/ngx_http_log_module.c:1079:16: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
         return (u_char *) ngx_escape_json(buf, value->data, value->len);
                ^
src/http/modules/ngx_http_log_module.c: In function 'ngx_http_log_open_file_cache':
src/http/modules/ngx_http_log_module.c:1726:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_request_body.o \
	src/http/ngx_http_request_body.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_variables.o \
	src/http/ngx_http_variables.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_script.o \
	src/http/ngx_http_script.c
src/http/ngx_http_request_body.c: In function 'ngx_http_write_request_body':
src/http/ngx_http_request_body.c:454:18: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         tf->warn = "a client request body is buffered to a temporary file";
                  ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_request':
src/http/ngx_http_variables.c:689:9: warning: cast increases required alignment of target type [-Wcast-align]
     s = (ngx_str_t *) ((char *) r + data);
         ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_request_get_size':
src/http/ngx_http_variables.c:729:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (size_t *) ((char *) r + data);
          ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_request_set_size':
src/http/ngx_http_variables.c:763:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (ssize_t *) ((char *) r + data);
          ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_header':
src/http/ngx_http_variables.c:777:10: warning: cast increases required alignment of target type [-Wcast-align]
     h = *(ngx_table_elt_t **) ((char *) r + data);
          ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_headers_internal':
src/http/ngx_http_variables.c:820:9: warning: cast increases required alignment of target type [-Wcast-align]
     a = (ngx_array_t *) ((char *) r + data);
         ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_binary_remote_addr':
src/http/ngx_http_variables.c:1183:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) r->connection->sockaddr;
                ^
src/http/ngx_http_variables.c:1195:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) r->connection->sockaddr;
               ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_sent_connection':
src/http/ngx_http_variables.c:1857:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "upgrade";
           ^
src/http/ngx_http_variables.c:1861:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "keep-alive";
           ^
src/http/ngx_http_variables.c:1865:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "close";
           ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_request_id':
src/http/ngx_http_variables.c:2114:55: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_ssl_error(NGX_LOG_ERR, r->connection->log, 0, "RAND_bytes() failed");
                                                       ^~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/http/ngx_http_variables.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/http/ngx_http_variables.c: In function 'ngx_http_variables_init_vars':
src/http/ngx_http_variables.c:2675:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "variables_hash";
               ^
src/http/ngx_http_script.c: In function 'ngx_http_complex_value':
src/http/ngx_http_script.c:81:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) e.ip) {
             ^
src/http/ngx_http_script.c:82:18: warning: cast increases required alignment of target type [-Wcast-align]
         lcode = *(ngx_http_script_len_code_pt *) e.ip;
                  ^
src/http/ngx_http_script.c:96:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) e.ip) {
             ^
src/http/ngx_http_script.c:97:17: warning: cast increases required alignment of target type [-Wcast-align]
         code = *(ngx_http_script_code_pt *) e.ip;
                 ^
src/http/ngx_http_script.c: In function 'ngx_http_set_complex_value_slot':
src/http/ngx_http_script.c:220:10: warning: cast increases required alignment of target type [-Wcast-align]
     cv = (ngx_http_complex_value_t **) (p + cmd->offset);
          ^
src/http/ngx_http_script.c:223:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "duplicate";
                ^~~~~~~~~~~
src/http/ngx_http_script.c: In function 'ngx_http_set_predicate_slot':
src/http/ngx_http_script.c:285:9: warning: cast increases required alignment of target type [-Wcast-align]
     a = (ngx_array_t **) (p + cmd->offset);
         ^
src/http/ngx_http_script.c: In function 'ngx_http_script_run':
src/http/ngx_http_script.c:512:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) e.ip) {
             ^
src/http/ngx_http_script.c:513:18: warning: cast increases required alignment of target type [-Wcast-align]
         lcode = *(ngx_http_script_len_code_pt *) e.ip;
                  ^
src/http/ngx_http_script.c:527:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) e.ip) {
             ^
src/http/ngx_http_script.c:528:17: warning: cast increases required alignment of target type [-Wcast-align]
         code = *(ngx_http_script_code_pt *) e.ip;
                 ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_len_code':
src/http/ngx_http_script.c:729:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_copy_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_code':
src/http/ngx_http_script.c:743:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_copy_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_var_len_code':
src/http/ngx_http_script.c:810:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_var_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_var_code':
src/http/ngx_http_script.c:836:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_var_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_regex_start_code':
src/http/ngx_http_script.c:919:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_regex_code_t *) e->ip;
            ^
src/http/ngx_http_script.c:1038:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/ngx_http_script.c:1039:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/ngx_http_script.c: In function 'ngx_http_script_regex_end_code':
src/http/ngx_http_script.c:1072:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_regex_end_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_capture_len_code':
src/http/ngx_http_script.c:1215:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_copy_capture_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_capture_code':
src/http/ngx_http_script.c:1253:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_copy_capture_code_t *) e->ip;
            ^
src/http/ngx_http_script.c:1269:22: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
             e->pos = (u_char *) ngx_escape_uri(pos, &p[cap[n]],
                      ^
src/http/ngx_http_script.c: In function 'ngx_http_script_full_name_len_code':
src/http/ngx_http_script.c:1318:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_full_name_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_full_name_code':
src/http/ngx_http_script.c:1334:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_full_name_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_return_code':
src/http/ngx_http_script.c:1362:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_return_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_if_code':
src/http/ngx_http_script.c:1392:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_if_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_file_code':
src/http/ngx_http_script.c:1484:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_file_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_complex_value_code':
src/http/ngx_http_script.c:1615:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_complex_value_code_t *) e->ip;
            ^
src/http/ngx_http_script.c:1629:20: warning: cast increases required alignment of target type [-Wcast-align]
     for (len = 0; *(uintptr_t *) le.ip; len += lcode(&le)) {
                    ^
src/http/ngx_http_script.c:1630:18: warning: cast increases required alignment of target type [-Wcast-align]
         lcode = *(ngx_http_script_len_code_pt *) le.ip;
                  ^
src/http/ngx_http_script.c: In function 'ngx_http_script_value_code':
src/http/ngx_http_script.c:1654:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_value_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_set_var_code':
src/http/ngx_http_script.c:1674:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_var_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_var_set_handler_code':
src/http/ngx_http_script.c:1712:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_var_handler_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_var_code':
src/http/ngx_http_script.c:1731:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_var_code_t *) e->ip;
            ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_upstream.o \
	src/http/ngx_http_upstream.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_upstream_round_robin.o \
	src/http/ngx_http_upstream_round_robin.c
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_connect':
src/http/ngx_http_upstream.c:1402:32: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     r->connection->log->action = "connecting to upstream";
                                ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_ssl_init_connection':
src/http/ngx_http_upstream.c:1594:38: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                      "setsockopt(TCP_NODELAY) failed");
                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c:1604:32: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     r->connection->log->action = "SSL handshaking to upstream";
                                ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_ssl_name':
src/http/ngx_http_upstream.c:1766:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "SSL_set_tlsext_host_name(\"%s\") failed", name.data);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:82:0,
                 from src/http/ngx_http_upstream.c:9:
src/event/ngx_event_openssl.h:239:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_send_request':
src/http/ngx_http_upstream.c:1881:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "sending request to upstream";
                    ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_send_request_body':
src/http/ngx_http_upstream.c:1999:38: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                      "setsockopt(TCP_NODELAY) failed");
                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_header':
src/http/ngx_http_upstream.c:2137:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "reading response header from upstream";
                    ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_test_connect':
src/http/ngx_http_upstream.c:2519:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             c->log->action = "connecting to upstream";
                            ^
src/http/ngx_http_upstream.c:2520:49: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             (void) ngx_connection_error(c, err, "connect() failed");
                                                 ^~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_body_in_memory':
src/http/ngx_http_upstream.c:2689:48: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_connection_error(c, NGX_ETIMEDOUT, "upstream timed out");
                                                ^~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_send_response':
src/http/ngx_http_upstream.c:2843:38: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                      "setsockopt(TCP_NODELAY) failed");
                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c:3015:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p->temp_file->warn = "an upstream response is buffered "
                            ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_upgrade':
src/http/ngx_http_upstream.c:3117:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "proxying upgraded connection";
                    ^
src/http/ngx_http_upstream.c:3134:38: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                      "setsockopt(TCP_NODELAY) failed");
                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c:3150:38: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                      "setsockopt(TCP_NODELAY) failed");
                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_upgraded':
src/http/ngx_http_upstream.c:3228:48: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_connection_error(c, NGX_ETIMEDOUT, "client timed out");
                                                ^~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c:3234:48: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_connection_error(c, NGX_ETIMEDOUT, "upstream timed out");
                                                ^~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_non_buffered_downstream':
src/http/ngx_http_upstream.c:3398:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "sending to client";
                    ^
src/http/ngx_http_upstream.c:3402:48: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_connection_error(c, NGX_ETIMEDOUT, "client timed out");
                                                ^~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_non_buffered_upstream':
src/http/ngx_http_upstream.c:3422:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "reading upstream";
                    ^
src/http/ngx_http_upstream.c:3425:48: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         ngx_connection_error(c, NGX_ETIMEDOUT, "upstream timed out");
                                                ^~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_downstream':
src/http/ngx_http_upstream.c:3715:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "sending to client";
                    ^
src/http/ngx_http_upstream.c:3746:52: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_connection_error(c, NGX_ETIMEDOUT, "client timed out");
                                                    ^~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_upstream':
src/http/ngx_http_upstream.c:3788:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "reading upstream";
                    ^
src/http/ngx_http_upstream.c:3814:52: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_connection_error(c, NGX_ETIMEDOUT, "upstream timed out");
                                                    ^~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_finalize_request':
src/http/ngx_http_upstream.c:4292:32: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     r->connection->log->action = "sending to client";
                                ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_header_line':
src/http/ngx_http_upstream.c:4333:10: warning: cast increases required alignment of target type [-Wcast-align]
     ph = (ngx_table_elt_t **) ((char *) &r->upstream->headers_in + offset);
          ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_copy_header_line':
src/http/ngx_http_upstream.c:4773:14: warning: cast increases required alignment of target type [-Wcast-align]
         ph = (ngx_table_elt_t **) ((char *) &r->headers_out + offset);
              ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_copy_multi_header_lines':
src/http/ngx_http_upstream.c:4788:10: warning: cast increases required alignment of target type [-Wcast-align]
     pa = (ngx_array_t *) ((char *) &r->headers_out + offset);
          ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_rewrite_refresh':
src/http/ngx_http_upstream.c:4955:45: warning: passing argument 2 of 'ngx_strcasestrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = ngx_strcasestrn(ho->value.data, "url=", 4 - 1);
                                             ^~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/ngx_http_upstream.c:9:
src/core/ngx_string.h:163:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strcasestrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_bind_set_slot':
src/http/ngx_http_upstream.c:5904:14: warning: cast increases required alignment of target type [-Wcast-align]
     plocal = (ngx_http_upstream_local_t **) (p + cmd->offset);
              ^
src/http/ngx_http_upstream.c:5907:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_param_set_slot':
src/http/ngx_http_upstream.c:6049:9: warning: cast increases required alignment of target type [-Wcast-align]
     a = (ngx_array_t **) (p + cmd->offset);
         ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_init_main_conf':
src/http/ngx_http_upstream.c:6276:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "upstream_headers_in_hash";
               ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_file_cache.o \
	src/http/ngx_http_file_cache.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_write_filter_module.o \
	src/http/ngx_http_write_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_header_filter_module.o \
	src/http/ngx_http_header_filter_module.c
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_init':
src/http/ngx_http_file_cache.c:127:21: warning: cast increases required alignment of target type [-Wcast-align]
     cache->shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
                     ^
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_read':
src/http/ngx_http_file_cache.c:548:9: warning: cast increases required alignment of target type [-Wcast-align]
     h = (ngx_http_file_cache_header_t *) c->buf->pos;
         ^
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_lookup':
src/http/ngx_http_file_cache.c:989:15: warning: cast increases required alignment of target type [-Wcast-align]
         fcn = (ngx_http_file_cache_node_t *) node;
               ^
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_rbtree_insert_value':
src/http/ngx_http_file_cache.c:1026:18: warning: cast increases required alignment of target type [-Wcast-align]
             cn = (ngx_http_file_cache_node_t *) node;
                  ^
src/http/ngx_http_file_cache.c:1027:19: warning: cast increases required alignment of target type [-Wcast-align]
             cnt = (ngx_http_file_cache_node_t *) temp;
                   ^
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_set_header':
src/http/ngx_http_file_cache.c:1239:40: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_http_file_cache_header_t  *h = (ngx_http_file_cache_header_t *) buf;
                                        ^
In file included from src/core/ngx_core.h:62:0,
                 from src/http/ngx_http_file_cache.c:9:
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_forced_expire':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/ngx_http_file_cache.c:1725:15: note: in expansion of macro 'ngx_queue_data'
         fcn = ngx_queue_data(q, ngx_http_file_cache_node_t, queue);
               ^~~~~~~~~~~~~~
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_expire':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/ngx_http_file_cache.c:1798:15: note: in expansion of macro 'ngx_queue_data'
         fcn = ngx_queue_data(q, ngx_http_file_cache_node_t, queue);
               ^~~~~~~~~~~~~~
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_delete':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/ngx_http_file_cache.c:1875:11: note: in expansion of macro 'ngx_queue_data'
     fcn = ngx_queue_data(q, ngx_http_file_cache_node_t, queue);
           ^~~~~~~~~~~~~~
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_set_slot':
src/http/ngx_http_file_cache.c:2562:14: warning: cast increases required alignment of target type [-Wcast-align]
     caches = (ngx_array_t *) (confp + cmd->offset);
              ^
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_valid_set_slot':
src/http/ngx_http_file_cache.c:2588:9: warning: cast increases required alignment of target type [-Wcast-align]
     a = (ngx_array_t **) (p + cmd->offset);
         ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_chunked_filter_module.o \
	src/http/modules/ngx_http_chunked_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/v2/ngx_http_v2_filter_module.o \
	src/http/v2/ngx_http_v2_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_range_filter_module.o \
	src/http/modules/ngx_http_range_filter_module.c
In file included from src/http/ngx_http.h:39:0,
                 from src/http/v2/ngx_http_v2_filter_module.c:10:
src/http/v2/ngx_http_v2_filter_module.c: In function 'ngx_http_v2_create_headers_frame':
src/http/v2/ngx_http_v2.h:314:7: warning: cast increases required alignment of target type [-Wcast-align]
     (*(uint32_t *) (p) = htonl((uint32_t) (s)), (p) + sizeof(uint32_t))
       ^
src/http/v2/ngx_http_v2.h:338:5: note: in expansion of macro 'ngx_http_v2_write_uint32_aligned'
     ngx_http_v2_write_uint32_aligned(p, (l) << 8 | (t))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2_filter_module.c:694:19: note: in expansion of macro 'ngx_http_v2_write_len_and_type'
         b->last = ngx_http_v2_write_len_and_type(b->last, frame_size, type);
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2_filter_module.c: In function 'ngx_http_v2_filter_get_data_frame':
src/http/v2/ngx_http_v2.h:314:7: warning: cast increases required alignment of target type [-Wcast-align]
     (*(uint32_t *) (p) = htonl((uint32_t) (s)), (p) + sizeof(uint32_t))
       ^
src/http/v2/ngx_http_v2.h:338:5: note: in expansion of macro 'ngx_http_v2_write_uint32_aligned'
     ngx_http_v2_write_uint32_aligned(p, (l) << 8 | (t))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2_filter_module.c:1032:17: note: in expansion of macro 'ngx_http_v2_write_len_and_type'
     buf->last = ngx_http_v2_write_len_and_type(buf->last, len,
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:62:0,
                 from src/http/v2/ngx_http_v2_filter_module.c:9:
src/http/v2/ngx_http_v2_filter_module.c: In function 'ngx_http_v2_waiting_queue':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2_filter_module.c:1119:13: note: in expansion of macro 'ngx_queue_data'
         s = ngx_queue_data(q, ngx_http_v2_stream_t, queue);
             ^~~~~~~~~~~~~~
src/http/v2/ngx_http_v2_filter_module.c: In function 'ngx_http_v2_filter_cleanup':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2_filter_module.c:1382:22: note: in expansion of macro 'ngx_queue_data'
             stream = ngx_queue_data(q, ngx_http_v2_stream_t, queue);
                      ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_gzip_filter_module.o \
	src/http/modules/ngx_http_gzip_filter_module.c
src/http/modules/ngx_http_gzip_filter_module.c: In function 'ngx_http_gzip_window':
src/http/modules/ngx_http_gzip_filter_module.c:1210:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "must be 512, 1k, 2k, 4k, 8k, 16k, or 32k";
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_gzip_filter_module.c: In function 'ngx_http_gzip_hash':
src/http/modules/ngx_http_gzip_filter_module.c:1234:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "must be 512, 1k, 2k, 4k, 8k, 16k, 32k, 64k, or 128k";
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_postpone_filter_module.o \
	src/http/ngx_http_postpone_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_ssi_filter_module.o \
	src/http/modules/ngx_http_ssi_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_charset_filter_module.o \
	src/http/modules/ngx_http_charset_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_userid_filter_module.o \
	src/http/modules/ngx_http_userid_filter_module.c
src/http/modules/ngx_http_ssi_filter_module.c: In function 'ngx_http_ssi_init_main_conf':
src/http/modules/ngx_http_ssi_filter_module.c:2849:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "ssi_command_hash";
               ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_headers_filter_module.o \
	src/http/modules/ngx_http_headers_filter_module.c
src/http/modules/ngx_http_charset_filter_module.c: In function 'ngx_http_charset_recode_from_utf8':
src/http/modules/ngx_http_charset_filter_module.c:802:17: warning: cast increases required alignment of target type [-Wcast-align]
         table = (u_char **) ctx->table;
                 ^
src/http/modules/ngx_http_charset_filter_module.c:877:13: warning: cast increases required alignment of target type [-Wcast-align]
     table = (u_char **) ctx->table;
             ^
src/http/modules/ngx_http_charset_filter_module.c: In function 'ngx_http_charset_map_block':
src/http/modules/ngx_http_charset_filter_module.c:1240:14: warning: cast increases required alignment of target type [-Wcast-align]
         pp = (u_char **) &table->dst2src[0];
              ^
src/http/modules/ngx_http_charset_filter_module.c: In function 'ngx_http_charset_map':
src/http/modules/ngx_http_charset_filter_module.c:1365:14: warning: cast increases required alignment of target type [-Wcast-align]
         pp = (u_char **) &table->dst2src[0];
              ^
src/http/modules/ngx_http_charset_filter_module.c: In function 'ngx_http_set_charset_slot':
src/http/modules/ngx_http_charset_filter_module.c:1405:10: warning: cast increases required alignment of target type [-Wcast-align]
     cp = (ngx_int_t *) (p + cmd->offset);
          ^
src/http/modules/ngx_http_charset_filter_module.c:1408:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_userid_filter_module.c: In function 'ngx_http_userid_create_uid':
src/http/modules/ngx_http_userid_filter_module.c:533:24: warning: cast increases required alignment of target type [-Wcast-align]
                 sin6 = (struct sockaddr_in6 *) c->local_sockaddr;
                        ^
src/http/modules/ngx_http_userid_filter_module.c:545:23: warning: cast increases required alignment of target type [-Wcast-align]
                 sin = (struct sockaddr_in *) c->local_sockaddr;
                       ^
src/http/modules/ngx_http_userid_filter_module.c: In function 'ngx_http_userid_expires':
src/http/modules/ngx_http_userid_filter_module.c:761:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_userid_filter_module.c:778:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/http/modules/ngx_http_userid_filter_module.c: In function 'ngx_http_userid_mark':
src/http/modules/ngx_http_userid_filter_module.c:806:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_userid_filter_module.c:822:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "value must be \"off\" or a single letter, digit or \"=\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_headers_filter_module.c: In function 'ngx_http_parse_expires':
src/http/modules/ngx_http_headers_filter_module.c:387:18: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             *err = "daily time cannot be used with \"modified\" parameter";
                  ^
src/http/modules/ngx_http_headers_filter_module.c:410:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         *err = "invalid value";
              ^
src/http/modules/ngx_http_headers_filter_module.c:417:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         *err = "daily time value must be less than 24 hours";
              ^
src/http/modules/ngx_http_headers_filter_module.c: In function 'ngx_http_set_response_header':
src/http/modules/ngx_http_headers_filter_module.c:513:11: warning: cast increases required alignment of target type [-Wcast-align]
     old = (ngx_table_elt_t **) ((char *) &r->headers_out + hv->offset);
           ^
src/http/modules/ngx_http_headers_filter_module.c: In function 'ngx_http_headers_expires':
src/http/modules/ngx_http_headers_filter_module.c:615:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_headers_filter_module.c:629:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             return "invalid value";
                    ^~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_copy_filter_module.o \
	src/http/ngx_http_copy_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_not_modified_filter_module.o \
	src/http/modules/ngx_http_not_modified_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/v2/ngx_http_v2.o \
	src/http/v2/ngx_http_v2.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/v2/ngx_http_v2_table.o \
	src/http/v2/ngx_http_v2_table.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/v2/ngx_http_v2_huff_decode.o \
	src/http/v2/ngx_http_v2_huff_decode.c
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_init':
src/http/v2/ngx_http_v2.c:219:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "processing HTTP/2 connection";
                    ^
In file included from src/core/ngx_core.h:49:0,
                 from src/http/v2/ngx_http_v2.c:9:
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_send_output_queue':
src/os/unix/ngx_socket.h:47:28: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 #define ngx_tcp_push_n     "setsockopt(!TCP_CORK)"
                            ^
src/http/v2/ngx_http_v2.c:521:55: note: in expansion of macro 'ngx_tcp_push_n'
             ngx_connection_error(c, ngx_socket_errno, ngx_tcp_push_n " failed");
                                                       ^~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/v2/ngx_http_v2.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c:548:34: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                  "setsockopt(TCP_NODELAY) failed");
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/http/v2/ngx_http_v2.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_state_proxy_protocol':
src/http/v2/ngx_http_v2.c:686:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "reading PROXY protocol";
                 ^
src/http/v2/ngx_http_v2.c:690:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "processing HTTP/2 connection";
                 ^
In file included from src/core/ngx_core.h:62:0,
                 from src/http/v2/ngx_http_v2.c:9:
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_state_window_update':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2.c:2232:18: note: in expansion of macro 'ngx_queue_data'
         stream = ngx_queue_data(q, ngx_http_v2_stream_t, queue);
                  ^~~~~~~~~~~~~~
In file included from src/http/ngx_http.h:39:0,
                 from src/http/v2/ngx_http_v2.c:10:
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_send_settings':
src/http/v2/ngx_http_v2.h:314:7: warning: cast increases required alignment of target type [-Wcast-align]
     (*(uint32_t *) (p) = htonl((uint32_t) (s)), (p) + sizeof(uint32_t))
       ^
src/http/v2/ngx_http_v2.h:338:5: note: in expansion of macro 'ngx_http_v2_write_uint32_aligned'
     ngx_http_v2_write_uint32_aligned(p, (l) << 8 | (t))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c:2486:17: note: in expansion of macro 'ngx_http_v2_write_len_and_type'
     buf->last = ngx_http_v2_write_len_and_type(buf->last, len,
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_get_frame':
src/http/v2/ngx_http_v2.h:314:7: warning: cast increases required alignment of target type [-Wcast-align]
     (*(uint32_t *) (p) = htonl((uint32_t) (s)), (p) + sizeof(uint32_t))
       ^
src/http/v2/ngx_http_v2.h:338:5: note: in expansion of macro 'ngx_http_v2_write_uint32_aligned'
     ngx_http_v2_write_uint32_aligned(p, (l) << 8 | (t))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c:2675:17: note: in expansion of macro 'ngx_http_v2_write_len_and_type'
     buf->last = ngx_http_v2_write_len_and_type(buf->pos, length, type);
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_create_stream':
src/http/v2/ngx_http_v2.c:2760:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "reading client request headers";
                 ^
In file included from src/core/ngx_core.h:62:0,
                 from src/http/v2/ngx_http_v2.c:9:
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_get_closed_node':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2.c:2900:12: note: in expansion of macro 'ngx_queue_data'
     node = ngx_queue_data(q, ngx_http_v2_node_t, reuse);
            ^~~~~~~~~~~~~~
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2.c:2923:17: note: in expansion of macro 'ngx_queue_data'
         child = ngx_queue_data(q, ngx_http_v2_node_t, queue);
                 ^~~~~~~~~~~~~~
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2.c:2933:17: note: in expansion of macro 'ngx_queue_data'
         child = ngx_queue_data(q, ngx_http_v2_node_t, queue);
                 ^~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_set_dependency':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2.c:4419:21: note: in expansion of macro 'ngx_queue_data'
             child = ngx_queue_data(q, ngx_http_v2_node_t, queue);
                     ^~~~~~~~~~~~~~
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_node_children_update':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/v2/ngx_http_v2.c:4449:17: note: in expansion of macro 'ngx_queue_data'
         child = ngx_queue_data(q, ngx_http_v2_node_t, queue);
                 ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/v2/ngx_http_v2_huff_encode.o \
	src/http/v2/ngx_http_v2_huff_encode.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/v2/ngx_http_v2_module.o \
	src/http/v2/ngx_http_v2_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_static_module.o \
	src/http/modules/ngx_http_static_module.c
src/http/v2/ngx_http_v2_huff_encode.c: In function 'ngx_http_v2_huff_encode':
src/http/v2/ngx_http_v2_huff_encode.c:186:7: warning: cast increases required alignment of target type [-Wcast-align]
     (*(uint32_t *) (dst) = htonl(buf))
       ^
src/http/v2/ngx_http_v2_huff_encode.c:227:9: note: in expansion of macro 'ngx_http_v2_huff_encode_buf'
         ngx_http_v2_huff_encode_buf(&dst[hlen], buf);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_autoindex_module.o \
	src/http/modules/ngx_http_autoindex_module.c
src/http/v2/ngx_http_v2_module.c: In function 'ngx_http_v2_recv_buffer_size':
src/http/v2/ngx_http_v2_module.c:413:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "value is too small";
                ^~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2_module.c: In function 'ngx_http_v2_streams_index_mask':
src/http/v2/ngx_http_v2_module.c:472:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "must be a power of two";
                ^~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_static_module.c: In function 'ngx_http_static_handler':
src/http/modules/ngx_http_static_module.c:214:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "sending response to client";
                 ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_index_module.o \
	src/http/modules/ngx_http_index_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_auth_basic_module.o \
	src/http/modules/ngx_http_auth_basic_module.c
src/http/modules/ngx_http_autoindex_module.c: In function 'ngx_http_autoindex_html':
src/http/modules/ngx_http_autoindex_module.c:458:32: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                ^~~~~
src/http/modules/ngx_http_autoindex_module.c:458:39: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                       ^~~~~
src/http/modules/ngx_http_autoindex_module.c:458:46: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                              ^~~~~
src/http/modules/ngx_http_autoindex_module.c:458:53: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                                     ^~~~~
src/http/modules/ngx_http_autoindex_module.c:458:60: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                                            ^~~~~
src/http/modules/ngx_http_autoindex_module.c:458:67: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                                                   ^~~~~
src/http/modules/ngx_http_autoindex_module.c:459:32: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                ^~~~~
src/http/modules/ngx_http_autoindex_module.c:459:39: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                       ^~~~~
src/http/modules/ngx_http_autoindex_module.c:459:46: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                              ^~~~~
src/http/modules/ngx_http_autoindex_module.c:459:53: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                                     ^~~~~
src/http/modules/ngx_http_autoindex_module.c:459:60: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                                            ^~~~~
src/http/modules/ngx_http_autoindex_module.c:459:67: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                                                   ^~~~~
src/http/modules/ngx_http_autoindex_module.c:519:19: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
         b->last = (u_char *) ngx_escape_html(b->last, r->uri.data, r->uri.len);
                   ^
src/http/modules/ngx_http_autoindex_module.c:521:19: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
         b->last = (u_char *) ngx_escape_html(b->last, r->uri.data, r->uri.len);
                   ^
src/http/modules/ngx_http_autoindex_module.c:573:27: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
                 b->last = (u_char *) ngx_escape_html(last, entry[i].name.data,
                           ^
src/http/modules/ngx_http_autoindex_module.c:588:27: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
                 b->last = (u_char *) ngx_escape_html(b->last,
                           ^
src/http/modules/ngx_http_autoindex_module.c: In function 'ngx_http_autoindex_json':
src/http/modules/ngx_http_autoindex_module.c:745:23: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
             b->last = (u_char *) ngx_escape_json(b->last, entry[i].name.data,
                       ^
src/http/modules/ngx_http_autoindex_module.c: In function 'ngx_http_autoindex_xml':
src/http/modules/ngx_http_autoindex_module.c:907:23: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
             b->last = (u_char *) ngx_escape_html(b->last, entry[i].name.data,
                       ^
src/http/modules/ngx_http_index_module.c: In function 'ngx_http_index_handler':
src/http/modules/ngx_http_index_module.c:152:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_index_module.c:153:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) e.ip;
                          ^
src/http/modules/ngx_http_index_module.c:184:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_index_module.c:185:25: warning: cast increases required alignment of target type [-Wcast-align]
                 code = *(ngx_http_script_code_pt *) e.ip;
                         ^
src/http/modules/ngx_http_auth_basic_module.c: In function 'ngx_http_auth_basic_user_file':
src/http/modules/ngx_http_auth_basic_module.c:449:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_access_module.o \
	src/http/modules/ngx_http_access_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_limit_conn_module.o \
	src/http/modules/ngx_http_limit_conn_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_limit_req_module.o \
	src/http/modules/ngx_http_limit_req_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_geo_module.o \
	src/http/modules/ngx_http_geo_module.c
src/http/modules/ngx_http_limit_conn_module.c: In function 'ngx_http_limit_conn_handler':
src/http/modules/ngx_http_limit_conn_module.c:186:18: warning: cast increases required alignment of target type [-Wcast-align]
         shpool = (ngx_slab_pool_t *) limits[i].shm_zone->shm.addr;
                  ^
src/http/modules/ngx_http_limit_conn_module.c:206:18: warning: cast increases required alignment of target type [-Wcast-align]
             lc = (ngx_http_limit_conn_node_t *) &node->color;
                  ^
src/http/modules/ngx_http_limit_conn_module.c:206:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             lc = (ngx_http_limit_conn_node_t *) &node->color;
             ^~
src/http/modules/ngx_http_limit_conn_module.c:217:18: warning: cast increases required alignment of target type [-Wcast-align]
             lc = (ngx_http_limit_conn_node_t *) &node->color;
                  ^
src/http/modules/ngx_http_limit_conn_module.c:217:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             lc = (ngx_http_limit_conn_node_t *) &node->color;
             ^~
src/http/modules/ngx_http_limit_conn_module.c: In function 'ngx_http_limit_conn_rbtree_insert_value':
src/http/modules/ngx_http_limit_conn_module.c:275:19: warning: cast increases required alignment of target type [-Wcast-align]
             lcn = (ngx_http_limit_conn_node_t *) &node->color;
                   ^
src/http/modules/ngx_http_limit_conn_module.c:275:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             lcn = (ngx_http_limit_conn_node_t *) &node->color;
             ^~~
src/http/modules/ngx_http_limit_conn_module.c:276:20: warning: cast increases required alignment of target type [-Wcast-align]
             lcnt = (ngx_http_limit_conn_node_t *) &temp->color;
                    ^
src/http/modules/ngx_http_limit_conn_module.c:276:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             lcnt = (ngx_http_limit_conn_node_t *) &temp->color;
             ^~~~
src/http/modules/ngx_http_limit_conn_module.c: In function 'ngx_http_limit_conn_lookup':
src/http/modules/ngx_http_limit_conn_module.c:321:15: warning: cast increases required alignment of target type [-Wcast-align]
         lcn = (ngx_http_limit_conn_node_t *) &node->color;
               ^
src/http/modules/ngx_http_limit_conn_module.c:321:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
         lcn = (ngx_http_limit_conn_node_t *) &node->color;
         ^~~
src/http/modules/ngx_http_limit_conn_module.c: In function 'ngx_http_limit_conn_cleanup':
src/http/modules/ngx_http_limit_conn_module.c:347:14: warning: cast increases required alignment of target type [-Wcast-align]
     shpool = (ngx_slab_pool_t *) lccln->shm_zone->shm.addr;
              ^
src/http/modules/ngx_http_limit_conn_module.c:349:10: warning: cast increases required alignment of target type [-Wcast-align]
     lc = (ngx_http_limit_conn_node_t *) &node->color;
          ^
src/http/modules/ngx_http_limit_conn_module.c:349:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
     lc = (ngx_http_limit_conn_node_t *) &node->color;
     ^~
src/http/modules/ngx_http_limit_conn_module.c: In function 'ngx_http_limit_conn_init_zone':
src/http/modules/ngx_http_limit_conn_module.c:414:14: warning: cast increases required alignment of target type [-Wcast-align]
     shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
              ^
src/http/modules/ngx_http_limit_conn_module.c: In function 'ngx_http_limit_conn':
src/http/modules/ngx_http_limit_conn_module.c:625:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             return "is duplicate";
                    ^~~~~~~~~~~~~~
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_req_module.c: In function 'ngx_http_limit_req_rbtree_insert_value':
src/http/modules/ngx_http_limit_req_module.c:337:19: warning: cast increases required alignment of target type [-Wcast-align]
             lrn = (ngx_http_limit_req_node_t *) &node->color;
                   ^
src/http/modules/ngx_http_limit_req_module.c:337:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             lrn = (ngx_http_limit_req_node_t *) &node->color;
             ^~~
src/http/modules/ngx_http_limit_req_module.c:338:20: warning: cast increases required alignment of target type [-Wcast-align]
             lrnt = (ngx_http_limit_req_node_t *) &temp->color;
                    ^
src/http/modules/ngx_http_limit_req_module.c:338:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             lrnt = (ngx_http_limit_req_node_t *) &temp->color;
             ^~~~
src/http/modules/ngx_http_limit_req_module.c: In function 'ngx_http_limit_req_lookup':
src/http/modules/ngx_http_limit_req_module.c:392:14: warning: cast increases required alignment of target type [-Wcast-align]
         lr = (ngx_http_limit_req_node_t *) &node->color;
              ^
src/http/modules/ngx_http_limit_req_module.c:392:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
         lr = (ngx_http_limit_req_node_t *) &node->color;
         ^~
src/http/modules/ngx_http_limit_req_module.c:453:10: warning: cast increases required alignment of target type [-Wcast-align]
     lr = (ngx_http_limit_req_node_t *) &node->color;
          ^
src/http/modules/ngx_http_limit_req_module.c:453:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
     lr = (ngx_http_limit_req_node_t *) &node->color;
     ^~
In file included from src/core/ngx_core.h:62:0,
                 from src/http/modules/ngx_http_limit_req_module.c:9:
src/http/modules/ngx_http_limit_req_module.c: In function 'ngx_http_limit_req_expire':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/modules/ngx_http_limit_req_module.c:569:14: note: in expansion of macro 'ngx_queue_data'
         lr = ngx_queue_data(q, ngx_http_limit_req_node_t, queue);
              ^~~~~~~~~~~~~~
src/http/modules/ngx_http_limit_req_module.c:599:16: warning: cast increases required alignment of target type [-Wcast-align]
         node = (ngx_rbtree_node_t *)
                ^
src/http/modules/ngx_http_limit_req_module.c: In function 'ngx_http_limit_req_init_zone':
src/http/modules/ngx_http_limit_req_module.c:639:19: warning: cast increases required alignment of target type [-Wcast-align]
     ctx->shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
                   ^
src/http/modules/ngx_http_limit_req_module.c: In function 'ngx_http_limit_req':
src/http/modules/ngx_http_limit_req_module.c:927:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             return "is duplicate";
                    ^~~~~~~~~~~~~~
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_cidr_variable':
src/http/modules/ngx_http_geo_module.c:189:14: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
         vv = (ngx_http_variable_value_t *)
              ^
src/http/modules/ngx_http_geo_module.c:198:21: warning: cast increases required alignment of target type [-Wcast-align]
         inaddr6 = &((struct sockaddr_in6 *) addr.sockaddr)->sin6_addr;
                     ^
src/http/modules/ngx_http_geo_module.c:207:18: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
             vv = (ngx_http_variable_value_t *)
                  ^
src/http/modules/ngx_http_geo_module.c:211:18: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
             vv = (ngx_http_variable_value_t *)
                  ^
src/http/modules/ngx_http_geo_module.c:219:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) addr.sockaddr;
               ^
src/http/modules/ngx_http_geo_module.c:222:14: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
         vv = (ngx_http_variable_value_t *)
              ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_range_variable':
src/http/modules/ngx_http_geo_module.c:263:25: warning: cast increases required alignment of target type [-Wcast-align]
             inaddr6 = &((struct sockaddr_in6 *) addr.sockaddr)->sin6_addr;
                         ^
src/http/modules/ngx_http_geo_module.c:281:19: warning: cast increases required alignment of target type [-Wcast-align]
             sin = (struct sockaddr_in *) addr.sockaddr;
                   ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_cidr_add':
src/http/modules/ngx_http_geo_module.c:1156:15: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
         old = (ngx_http_variable_value_t *)
               ^
src/http/modules/ngx_http_geo_module.c:1194:15: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
         old = (ngx_http_variable_value_t *)
               ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_include_binary_base':
src/http/modules/ngx_http_geo_module.c:1475:14: warning: cast increases required alignment of target type [-Wcast-align]
     header = (ngx_http_geo_header_t *) base;
              ^
src/http/modules/ngx_http_geo_module.c:1485:10: warning: cast increases required alignment of target type [-Wcast-align]
     vv = (ngx_http_variable_value_t *) (base + sizeof(ngx_http_geo_header_t));
          ^
src/http/modules/ngx_http_geo_module.c:1492:14: warning: cast increases required alignment of target type [-Wcast-align]
         vv = (ngx_http_variable_value_t *) ((u_char *) vv + len);
              ^
src/http/modules/ngx_http_geo_module.c:1502:25: warning: cast increases required alignment of target type [-Wcast-align]
             ranges[i] = (ngx_http_geo_range_t *)
                         ^
src/http/modules/ngx_http_geo_module.c:1513:28: warning: cast increases required alignment of target type [-Wcast-align]
             range->value = (ngx_http_variable_value_t *)
                            ^
src/http/modules/ngx_http_geo_module.c:1518:17: warning: cast increases required alignment of target type [-Wcast-align]
         range = (ngx_http_geo_range_t *) ((u_char *) range + sizeof(void *));
                 ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_create_binary_base':
src/http/modules/ngx_http_geo_module.c:1591:14: warning: cast increases required alignment of target type [-Wcast-align]
     ranges = (ngx_http_geo_range_t **) p;
              ^
src/http/modules/ngx_http_geo_module.c:1601:17: warning: cast increases required alignment of target type [-Wcast-align]
         range = (ngx_http_geo_range_t *) p;
                 ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_copy_values':
src/http/modules/ngx_http_geo_module.c:1646:10: warning: cast increases required alignment of target type [-Wcast-align]
     vv = (ngx_http_variable_value_t *) p;
          ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_map_module.o \
	src/http/modules/ngx_http_map_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_split_clients_module.o \
	src/http/modules/ngx_http_split_clients_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_referer_module.o \
	src/http/modules/ngx_http_referer_module.c
src/http/modules/ngx_http_map_module.c: In function 'ngx_http_map_variable':
src/http/modules/ngx_http_map_module.c:135:14: warning: cast increases required alignment of target type [-Wcast-align]
         cv = (ngx_http_complex_value_t *) value->data;
              ^
src/http/modules/ngx_http_map_module.c: In function 'ngx_http_map_block':
src/http/modules/ngx_http_map_module.c:298:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "map_hash";
               ^
src/http/modules/ngx_http_map_module.c: In function 'ngx_http_map':
src/http/modules/ngx_http_map_module.c:439:23: warning: cast increases required alignment of target type [-Wcast-align]
                 cvp = (ngx_http_complex_value_t *) vp[i]->data;
                       ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_rewrite_module.o \
	src/http/modules/ngx_http_rewrite_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_ssl_module.o \
	src/http/modules/ngx_http_ssl_module.c
src/http/modules/ngx_http_referer_module.c: In function 'ngx_http_referer_merge_conf':
src/http/modules/ngx_http_referer_module.c:376:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "referer_hash";
               ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_proxy_module.o \
	src/http/modules/ngx_http_proxy_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_fastcgi_module.o \
	src/http/modules/ngx_http_fastcgi_module.c
src/http/modules/ngx_http_ssl_module.c: In function 'ngx_http_ssl_password_file':
src/http/modules/ngx_http_ssl_module.c:834:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
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_proxy_module.c: In function 'ngx_http_proxy_create_request':
src/http/modules/ngx_http_proxy_module.c:1231:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1232:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_proxy_module.c:1251:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) le.ip) {
             ^
src/http/modules/ngx_http_proxy_module.c:1252:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1253:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_proxy_module.c:1355:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) le.ip) {
             ^
src/http/modules/ngx_http_proxy_module.c:1356:18: warning: cast increases required alignment of target type [-Wcast-align]
         lcode = *(ngx_http_script_len_code_pt *) le.ip;
                  ^
src/http/modules/ngx_http_proxy_module.c:1361:14: warning: cast increases required alignment of target type [-Wcast-align]
         if (*(ngx_http_script_len_code_pt *) le.ip) {
              ^
src/http/modules/ngx_http_proxy_module.c:1363:28: warning: cast increases required alignment of target type [-Wcast-align]
             for (len = 0; *(uintptr_t *) le.ip; len += lcode(&le)) {
                            ^
src/http/modules/ngx_http_proxy_module.c:1364:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) le.ip;
                          ^
src/http/modules/ngx_http_proxy_module.c:1375:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) e.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1376:21: warning: cast increases required alignment of target type [-Wcast-align]
             code = *(ngx_http_script_code_pt *) e.ip;
                     ^
src/http/modules/ngx_http_proxy_module.c:1431:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) e.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1432:21: warning: cast increases required alignment of target type [-Wcast-align]
             code = *(ngx_http_script_code_pt *) e.ip;
                     ^
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_rewrite_cookie':
src/http/modules/ngx_http_proxy_module.c:2549:53: warning: passing argument 2 of 'ngx_strcasestrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = ngx_strcasestrn(h->value.data + prefix, "domain=", 7 - 1);
                                                     ^~~~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/modules/ngx_http_proxy_module.c:9:
src/core/ngx_string.h:163:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strcasestrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c:2565:53: warning: passing argument 2 of 'ngx_strcasestrn' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = ngx_strcasestrn(h->value.data + prefix, "path=", 5 - 1);
                                                     ^~~~~~~
In file included from src/core/ngx_core.h:50:0,
                 from src/http/modules/ngx_http_proxy_module.c:9:
src/core/ngx_string.h:163:9: note: expected 'char *' but argument is of type 'const char *'
 u_char *ngx_strcasestrn(u_char *s1, char *s2, size_t n);
         ^~~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_merge_loc_conf':
src/http/modules/ngx_http_proxy_module.c:3292:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "proxy_headers_hash";
               ^
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_init_headers':
src/http/modules/ngx_http_proxy_module.c:3618:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "proxy_headers_hash";
               ^
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_pass':
src/http/modules/ngx_http_proxy_module.c:3640:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_store':
src/http/modules/ngx_http_proxy_module.c:4114:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c:4126:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"proxy_cache\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_cache':
src/http/modules/ngx_http_proxy_module.c:4171:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c:4180:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"proxy_store\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_cache_key':
src/http/modules/ngx_http_proxy_module.c:4229:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_ssl_password_file':
src/http/modules/ngx_http_proxy_module.c:4258:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_uwsgi_module.o \
	src/http/modules/ngx_http_uwsgi_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_scgi_module.o \
	src/http/modules/ngx_http_scgi_module.c
src/http/modules/ngx_http_fastcgi_module.c: In function 'ngx_http_fastcgi_create_request':
src/http/modules/ngx_http_fastcgi_module.c:859:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_fastcgi_module.c:861:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_fastcgi_module.c:864:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_fastcgi_module.c:867:32: warning: cast increases required alignment of target type [-Wcast-align]
             for (val_len = 0; *(uintptr_t *) le.ip; val_len += lcode(&le)) {
                                ^
src/http/modules/ngx_http_fastcgi_module.c:868:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) le.ip;
                          ^
src/http/modules/ngx_http_fastcgi_module.c:1020:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_fastcgi_module.c:1022:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_fastcgi_module.c:1025:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_fastcgi_module.c:1028:32: warning: cast increases required alignment of target type [-Wcast-align]
             for (val_len = 0; *(uintptr_t *) le.ip; val_len += lcode(&le)) {
                                ^
src/http/modules/ngx_http_fastcgi_module.c:1029:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) le.ip;
                          ^
src/http/modules/ngx_http_fastcgi_module.c:1036:25: warning: cast increases required alignment of target type [-Wcast-align]
                 while (*(uintptr_t *) e.ip) {
                         ^
src/http/modules/ngx_http_fastcgi_module.c:1037:29: warning: cast increases required alignment of target type [-Wcast-align]
                     code = *(ngx_http_script_code_pt *) e.ip;
                             ^
src/http/modules/ngx_http_fastcgi_module.c:1059:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_fastcgi_module.c:1060:25: warning: cast increases required alignment of target type [-Wcast-align]
                 code = *(ngx_http_script_code_pt *) e.ip;
                         ^
src/http/modules/ngx_http_fastcgi_module.c: In function 'ngx_http_fastcgi_merge_loc_conf':
src/http/modules/ngx_http_fastcgi_module.c:3083:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "fastcgi_hide_headers_hash";
               ^
src/http/modules/ngx_http_fastcgi_module.c: In function 'ngx_http_fastcgi_init_params':
src/http/modules/ngx_http_fastcgi_module.c:3353:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "fastcgi_params_hash";
               ^
src/http/modules/ngx_http_fastcgi_module.c: In function 'ngx_http_fastcgi_pass':
src/http/modules/ngx_http_fastcgi_module.c:3511:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_fastcgi_module.c: In function 'ngx_http_fastcgi_store':
src/http/modules/ngx_http_fastcgi_module.c:3616:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_fastcgi_module.c:3628:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"fastcgi_cache\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_fastcgi_module.c: In function 'ngx_http_fastcgi_cache':
src/http/modules/ngx_http_fastcgi_module.c:3673:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_fastcgi_module.c:3682:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"fastcgi_store\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_fastcgi_module.c: In function 'ngx_http_fastcgi_cache_key':
src/http/modules/ngx_http_fastcgi_module.c:3731:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_create_request':
src/http/modules/ngx_http_uwsgi_module.c:851:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_uwsgi_module.c:853:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_uwsgi_module.c:856:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_uwsgi_module.c:859:32: warning: cast increases required alignment of target type [-Wcast-align]
             for (val_len = 0; *(uintptr_t *) le.ip; val_len += lcode (&le)) {
                                ^
src/http/modules/ngx_http_uwsgi_module.c:860:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) le.ip;
                          ^
src/http/modules/ngx_http_uwsgi_module.c:981:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_uwsgi_module.c:983:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_uwsgi_module.c:986:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_uwsgi_module.c:989:32: warning: cast increases required alignment of target type [-Wcast-align]
             for (val_len = 0; *(uintptr_t *) le.ip; val_len += lcode(&le)) {
                                ^
src/http/modules/ngx_http_uwsgi_module.c:990:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) le.ip;
                          ^
src/http/modules/ngx_http_uwsgi_module.c:997:25: warning: cast increases required alignment of target type [-Wcast-align]
                 while (*(uintptr_t *) e.ip) {
                         ^
src/http/modules/ngx_http_uwsgi_module.c:998:29: warning: cast increases required alignment of target type [-Wcast-align]
                     code = *(ngx_http_script_code_pt *) e.ip;
                             ^
src/http/modules/ngx_http_uwsgi_module.c:1011:21: warning: cast increases required alignment of target type [-Wcast-align]
             code = *(ngx_http_script_code_pt *) e.ip;
                     ^
src/http/modules/ngx_http_uwsgi_module.c:1017:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_uwsgi_module.c:1018:25: warning: cast increases required alignment of target type [-Wcast-align]
                 code = *(ngx_http_script_code_pt *) e.ip;
                         ^
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_merge_loc_conf':
src/http/modules/ngx_http_uwsgi_module.c:1775:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "uwsgi_hide_headers_hash";
               ^
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_init_params':
src/http/modules/ngx_http_uwsgi_module.c:2046:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "uwsgi_params_hash";
               ^
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_pass':
src/http/modules/ngx_http_uwsgi_module.c:2067:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_store':
src/http/modules/ngx_http_uwsgi_module.c:2148:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c:2161:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"uwsgi_cache\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_cache':
src/http/modules/ngx_http_uwsgi_module.c:2207:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c:2216:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"uwsgi_store\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_cache_key':
src/http/modules/ngx_http_uwsgi_module.c:2265:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_ssl_password_file':
src/http/modules/ngx_http_uwsgi_module.c:2294:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c: In function 'ngx_http_scgi_create_request':
src/http/modules/ngx_http_scgi_module.c:664:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_scgi_module.c:666:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_scgi_module.c:669:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_scgi_module.c:672:32: warning: cast increases required alignment of target type [-Wcast-align]
             for (val_len = 0; *(uintptr_t *) le.ip; val_len += lcode(&le)) {
                                ^
src/http/modules/ngx_http_scgi_module.c:673:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) le.ip;
                          ^
src/http/modules/ngx_http_scgi_module.c:783:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_scgi_module.c:785:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_scgi_module.c:788:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/modules/ngx_http_scgi_module.c:791:32: warning: cast increases required alignment of target type [-Wcast-align]
             for (val_len = 0; *(uintptr_t *) le.ip; val_len += lcode(&le)) {
                                ^
src/http/modules/ngx_http_scgi_module.c:792:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) le.ip;
                          ^
src/http/modules/ngx_http_scgi_module.c:799:25: warning: cast increases required alignment of target type [-Wcast-align]
                 while (*(uintptr_t *) e.ip) {
                         ^
src/http/modules/ngx_http_scgi_module.c:800:29: warning: cast increases required alignment of target type [-Wcast-align]
                     code = *(ngx_http_script_code_pt *) e.ip;
                             ^
src/http/modules/ngx_http_scgi_module.c:813:21: warning: cast increases required alignment of target type [-Wcast-align]
             code = *(ngx_http_script_code_pt *) e.ip;
                     ^
src/http/modules/ngx_http_scgi_module.c:819:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_scgi_module.c:820:25: warning: cast increases required alignment of target type [-Wcast-align]
                 code = *(ngx_http_script_code_pt *) e.ip;
                         ^
src/http/modules/ngx_http_scgi_module.c: In function 'ngx_http_scgi_merge_loc_conf':
src/http/modules/ngx_http_scgi_module.c:1521:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "scgi_hide_headers_hash";
               ^
src/http/modules/ngx_http_scgi_module.c: In function 'ngx_http_scgi_init_params':
src/http/modules/ngx_http_scgi_module.c:1784:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "scgi_params_hash";
               ^
src/http/modules/ngx_http_scgi_module.c: In function 'ngx_http_scgi_pass':
src/http/modules/ngx_http_scgi_module.c:1804:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c: In function 'ngx_http_scgi_store':
src/http/modules/ngx_http_scgi_module.c:1862:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c:1874:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"scgi_cache\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c: In function 'ngx_http_scgi_cache':
src/http/modules/ngx_http_scgi_module.c:1919:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c:1928:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"scgi_store\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c: In function 'ngx_http_scgi_cache_key':
src/http/modules/ngx_http_scgi_module.c:1977:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_memcached_module.o \
	src/http/modules/ngx_http_memcached_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_empty_gif_module.o \
	src/http/modules/ngx_http_empty_gif_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_browser_module.o \
	src/http/modules/ngx_http_browser_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_upstream_hash_module.o \
	src/http/modules/ngx_http_upstream_hash_module.c
src/http/modules/ngx_http_memcached_module.c: In function 'ngx_http_memcached_create_request':
src/http/modules/ngx_http_memcached_module.c:280:19: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
         b->last = (u_char *) ngx_escape_uri(b->last, vv->data, vv->len,
                   ^
src/http/modules/ngx_http_memcached_module.c: In function 'ngx_http_memcached_pass':
src/http/modules/ngx_http_memcached_module.c:693:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_upstream_ip_hash_module.o \
	src/http/modules/ngx_http_upstream_ip_hash_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_upstream_least_conn_module.o \
	src/http/modules/ngx_http_upstream_least_conn_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_upstream_keepalive_module.o \
	src/http/modules/ngx_http_upstream_keepalive_module.c
src/http/modules/ngx_http_upstream_ip_hash_module.c: In function 'ngx_http_upstream_init_ip_hash_peer':
src/http/modules/ngx_http_upstream_ip_hash_module.c:122:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) r->connection->sockaddr;
               ^
src/http/modules/ngx_http_upstream_ip_hash_module.c:129:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) r->connection->sockaddr;
                ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_upstream_zone_module.o \
	src/http/modules/ngx_http_upstream_zone_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_stub_status_module.o \
	src/http/modules/ngx_http_stub_status_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/nginx-module/ngx_http_groonga_module.o \
	/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c
In file included from src/core/ngx_core.h:62:0,
                 from src/http/modules/ngx_http_upstream_keepalive_module.c:9:
src/http/modules/ngx_http_upstream_keepalive_module.c: In function 'ngx_http_upstream_get_keepalive_peer':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/modules/ngx_http_upstream_keepalive_module.c:236:16: note: in expansion of macro 'ngx_queue_data'
         item = ngx_queue_data(q, ngx_http_upstream_keepalive_cache_t, queue);
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_upstream_keepalive_module.c: In function 'ngx_http_upstream_free_keepalive_peer':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/modules/ngx_http_upstream_keepalive_module.c:325:16: note: in expansion of macro 'ngx_queue_data'
         item = ngx_queue_data(q, ngx_http_upstream_keepalive_cache_t, queue);
                ^~~~~~~~~~~~~~
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/modules/ngx_http_upstream_keepalive_module.c:333:16: note: in expansion of macro 'ngx_queue_data'
         item = ngx_queue_data(q, ngx_http_upstream_keepalive_cache_t, queue);
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_upstream_keepalive_module.c: In function 'ngx_http_upstream_keepalive':
src/http/modules/ngx_http_upstream_keepalive_module.c:502:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_upstream_zone_module.c: In function 'ngx_http_upstream_init_zone':
src/http/modules/ngx_http_upstream_zone_module.c:128:14: warning: cast increases required alignment of target type [-Wcast-align]
     shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
              ^
src/http/modules/ngx_http_upstream_zone_module.c:162:5: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     peersp = (ngx_http_upstream_rr_peers_t **) (void *) &shpool->data;
     ^~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/src/ndk.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk.c
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c: In function 'ngx_http_groonga_logger_log':
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:195:26: warning: passing argument 2 of 'ngx_write_fd' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   ngx_write_fd(file->fd, "|", 1);
                          ^~~
In file included from src/core/ngx_core.h:51:0,
                 from /<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:24:
src/os/unix/ngx_files.h:145:1: note: expected 'void *' but argument is of type 'const char *'
 ngx_write_fd(ngx_fd_t fd, void *buf, size_t n)
 ^~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:197:26: warning: passing argument 2 of 'ngx_write_fd' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   ngx_write_fd(file->fd, "|", 1);
                          ^~~
In file included from src/core/ngx_core.h:51:0,
                 from /<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:24:
src/os/unix/ngx_files.h:145:1: note: expected 'void *' but argument is of type 'const char *'
 ngx_write_fd(ngx_fd_t fd, void *buf, size_t n)
 ^~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:202:28: warning: passing argument 2 of 'ngx_write_fd' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_write_fd(file->fd, ": ", 2);
                            ^~~~
In file included from src/core/ngx_core.h:51:0,
                 from /<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:24:
src/os/unix/ngx_files.h:145:1: note: expected 'void *' but argument is of type 'const char *'
 ngx_write_fd(ngx_fd_t fd, void *buf, size_t n)
 ^~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:207:30: warning: passing argument 2 of 'ngx_write_fd' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       ngx_write_fd(file->fd, " ", 1);
                              ^~~
In file included from src/core/ngx_core.h:51:0,
                 from /<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:24:
src/os/unix/ngx_files.h:145:1: note: expected 'void *' but argument is of type 'const char *'
 ngx_write_fd(ngx_fd_t fd, void *buf, size_t n)
 ^~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:213:28: warning: passing argument 2 of 'ngx_write_fd' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ngx_write_fd(file->fd, " ", 1);
                            ^~~
In file included from src/core/ngx_core.h:51:0,
                 from /<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:24:
src/os/unix/ngx_files.h:145:1: note: expected 'void *' but argument is of type 'const char *'
 ngx_write_fd(ngx_fd_t fd, void *buf, size_t n)
 ^~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:218:26: warning: passing argument 2 of 'ngx_write_fd' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   ngx_write_fd(file->fd, "\n", 1);
                          ^~~~
In file included from src/core/ngx_core.h:51:0,
                 from /<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:24:
src/os/unix/ngx_files.h:145:1: note: expected 'void *' but argument is of type 'const char *'
 ngx_write_fd(ngx_fd_t fd, void *buf, size_t n)
 ^~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c: In function 'ngx_http_groonga_context_receive_handler_typed':
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:522:36: warning: passing argument 2 of 'ngx_os_signal_process' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                                    "quit",
                                    ^~~~~~
In file included from src/core/ngx_core.h:88:0,
                 from /<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:24:
src/os/unix/ngx_os.h:43:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_os_signal_process(ngx_cycle_t *cycle, char *sig, ngx_pid_t pid);
           ^~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c: In function 'ngx_http_groonga_conf_set_log_level_slot':
/<<PKGBUILDDIR>>/src/httpd/nginx-module/ngx_http_groonga_module.c:1133:12: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     status = "must be one of 'none', 'emergency', 'alert', "
            ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_module.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_core.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_core.c
In file included from /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs/ndk_config.c:50:0,
                 from /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk.c:8:
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_code':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:90:10: warning: cast increases required alignment of target type [-Wcast-align]
     sv = (ndk_set_var_code_t *) e->ip;
          ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_data_code':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:113:11: warning: cast increases required alignment of target type [-Wcast-align]
     svd = (ndk_set_var_data_code_t *) e->ip;
           ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_value_code':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:136:10: warning: cast increases required alignment of target type [-Wcast-align]
     sv = (ndk_set_var_code_t *) e->ip;
          ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_value_data_code':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:159:11: warning: cast increases required alignment of target type [-Wcast-align]
     svd = (ndk_set_var_data_code_t *) e->ip;
           ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_multi_value_code':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:182:11: warning: cast increases required alignment of target type [-Wcast-align]
     svs = (ndk_set_var_size_code_t *) e->ip;
           ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_multi_value_data_code':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:206:12: warning: cast increases required alignment of target type [-Wcast-align]
     svsd = (ndk_set_var_size_data_code_t *) e->ip;
            ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_hash_code':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:229:11: warning: cast increases required alignment of target type [-Wcast-align]
     svs = (ndk_set_var_size_code_t *) e->ip;
           ^
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c: In function 'ndk_set_var_filter':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk_set_var.c:339:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "no filter set";
                ^~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_ssl_handshake_phase':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1048:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "is duplicated";
            ^~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_ssl_handshake_inline':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1091:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "is duplicated";
            ^~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_init_phase':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1123:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "[Use either 'mruby_init' or 'mruby_init_code']";
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_init_inline':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1160:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "is duplicated";
            ^~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_init_worker_phase':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1187:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "[Use either 'mruby_init_worker' or 'mruby_init_worker_code'";
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_init_worker_inline':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1224:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "is duplicated";
            ^~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_exit_worker_phase':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1251:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "[Use either 'mruby_exit_worker' or 'mruby_exit_worker_code'";
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c: In function 'ngx_http_mruby_exit_worker_inline':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_module.c:1288:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "is duplicated";
            ^~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_init.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_init.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_request.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_var.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_var.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_connection.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_connection.c
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c: In function 'ngx_mrb_headers_in_obj':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:653:43: warning: passing argument 3 of 'ngx_mrb_get_class_obj' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   return ngx_mrb_get_class_obj(mrb, self, "headers_in_obj", "Headers_in");
                                           ^~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:635:18: note: expected 'char *' but argument is of type 'const char *'
 static mrb_value ngx_mrb_get_class_obj(mrb_state *mrb, mrb_value self, char *obj_id, char *class_name)
                  ^~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:653:61: warning: passing argument 4 of 'ngx_mrb_get_class_obj' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   return ngx_mrb_get_class_obj(mrb, self, "headers_in_obj", "Headers_in");
                                                             ^~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:635:18: note: expected 'char *' but argument is of type 'const char *'
 static mrb_value ngx_mrb_get_class_obj(mrb_state *mrb, mrb_value self, char *obj_id, char *class_name)
                  ^~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c: In function 'ngx_mrb_headers_out_obj':
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:658:43: warning: passing argument 3 of 'ngx_mrb_get_class_obj' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   return ngx_mrb_get_class_obj(mrb, self, "headers_out_obj", "Headers_out");
                                           ^~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:635:18: note: expected 'char *' but argument is of type 'const char *'
 static mrb_value ngx_mrb_get_class_obj(mrb_state *mrb, mrb_value self, char *obj_id, char *class_name)
                  ^~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:658:62: warning: passing argument 4 of 'ngx_mrb_get_class_obj' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   return ngx_mrb_get_class_obj(mrb, self, "headers_out_obj", "Headers_out");
                                                              ^~~~~~~~~~~~~
/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_request.c:635:18: note: expected 'char *' but argument is of type 'const char *'
 static mrb_value ngx_mrb_get_class_obj(mrb_state *mrb, mrb_value self, char *obj_id, char *class_name)
                  ^~~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_server.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_server.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_filter.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_filter.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_upstream.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_upstream.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/http/ngx_http_mruby_ssl.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/src/http/ngx_http_mruby_ssl.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/ngx_modules.o \
	objs/ngx_modules.c
sed -e "s|%%PREFIX%%|/etc/groonga/httpd|" \
	-e "s|%%PID_PATH%%|/var/run/groonga-httpd.pid|" \
	-e "s|%%CONF_PATH%%|/etc/groonga/httpd/groonga-httpd.conf|" \
	-e "s|%%ERROR_LOG_PATH%%|/var/log/groonga/httpd/error.log|" \
	< docs/man/nginx.8 > objs/nginx.8
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:127:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_core_module",
     ^~~~~~~~~~~~~~~~~
objs/ngx_modules.c:128:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_errlog_module",
     ^~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:129:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_conf_module",
     ^~~~~~~~~~~~~~~~~
objs/ngx_modules.c:130:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_openssl_module",
     ^~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:131:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_regex_module",
     ^~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:132:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_events_module",
     ^~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:133:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_event_core_module",
     ^~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:134:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_epoll_module",
     ^~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:135:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_module",
     ^~~~~~~~~~~~~~~~~
objs/ngx_modules.c:136:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_core_module",
     ^~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:137:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_log_module",
     ^~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:138:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:139:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_v2_module",
     ^~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:140:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_static_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:141:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_autoindex_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:142:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_index_module",
     ^~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:143:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_auth_basic_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:144:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_access_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:145:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_limit_conn_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:146:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_limit_req_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:147:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_geo_module",
     ^~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:148:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_map_module",
     ^~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:149:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_split_clients_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:150:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_referer_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:151:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_rewrite_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:152:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_ssl_module",
     ^~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:153:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_proxy_module",
     ^~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:154:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_fastcgi_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:155:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_uwsgi_module",
     ^~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:156:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_scgi_module",
     ^~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:157:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_memcached_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:158:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_empty_gif_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:159:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_browser_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:160:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_hash_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:161:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_ip_hash_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:162:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_least_conn_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:163:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_keepalive_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:164:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_zone_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:165:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_stub_status_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:166:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_groonga_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:167:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ndk_http_module",
     ^~~~~~~~~~~~~~~~~
objs/ngx_modules.c:168:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_write_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:169:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_header_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:170:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_chunked_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:171:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_v2_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:172:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_range_header_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:173:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_gzip_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:174:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_postpone_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:175:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_ssi_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:176:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_charset_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:177:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_userid_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:178:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_headers_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:179:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "__ngx_http_upstream_keepalive_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:180:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_mruby_module",
     ^~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:181:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_copy_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:182:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_range_body_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:183:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_not_modified_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc -o objs/nginx \
objs/src/core/nginx.o \
objs/src/core/ngx_log.o \
objs/src/core/ngx_palloc.o \
objs/src/core/ngx_array.o \
objs/src/core/ngx_list.o \
objs/src/core/ngx_hash.o \
objs/src/core/ngx_buf.o \
objs/src/core/ngx_queue.o \
objs/src/core/ngx_output_chain.o \
objs/src/core/ngx_string.o \
objs/src/core/ngx_parse.o \
objs/src/core/ngx_parse_time.o \
objs/src/core/ngx_inet.o \
objs/src/core/ngx_file.o \
objs/src/core/ngx_crc32.o \
objs/src/core/ngx_murmurhash.o \
objs/src/core/ngx_md5.o \
objs/src/core/ngx_sha1.o \
objs/src/core/ngx_rbtree.o \
objs/src/core/ngx_radix_tree.o \
objs/src/core/ngx_slab.o \
objs/src/core/ngx_times.o \
objs/src/core/ngx_shmtx.o \
objs/src/core/ngx_connection.o \
objs/src/core/ngx_cycle.o \
objs/src/core/ngx_spinlock.o \
objs/src/core/ngx_rwlock.o \
objs/src/core/ngx_cpuinfo.o \
objs/src/core/ngx_conf_file.o \
objs/src/core/ngx_module.o \
objs/src/core/ngx_resolver.o \
objs/src/core/ngx_open_file_cache.o \
objs/src/core/ngx_crypt.o \
objs/src/core/ngx_proxy_protocol.o \
objs/src/core/ngx_syslog.o \
objs/src/event/ngx_event.o \
objs/src/event/ngx_event_timer.o \
objs/src/event/ngx_event_posted.o \
objs/src/event/ngx_event_accept.o \
objs/src/event/ngx_event_connect.o \
objs/src/event/ngx_event_pipe.o \
objs/src/os/unix/ngx_time.o \
objs/src/os/unix/ngx_errno.o \
objs/src/os/unix/ngx_alloc.o \
objs/src/os/unix/ngx_files.o \
objs/src/os/unix/ngx_socket.o \
objs/src/os/unix/ngx_recv.o \
objs/src/os/unix/ngx_readv_chain.o \
objs/src/os/unix/ngx_udp_recv.o \
objs/src/os/unix/ngx_send.o \
objs/src/os/unix/ngx_writev_chain.o \
objs/src/os/unix/ngx_udp_send.o \
objs/src/os/unix/ngx_udp_sendmsg_chain.o \
objs/src/os/unix/ngx_channel.o \
objs/src/os/unix/ngx_shmem.o \
objs/src/os/unix/ngx_process.o \
objs/src/os/unix/ngx_daemon.o \
objs/src/os/unix/ngx_setaffinity.o \
objs/src/os/unix/ngx_setproctitle.o \
objs/src/os/unix/ngx_posix_init.o \
objs/src/os/unix/ngx_user.o \
objs/src/os/unix/ngx_dlopen.o \
objs/src/os/unix/ngx_process_cycle.o \
objs/src/os/unix/ngx_linux_init.o \
objs/src/event/modules/ngx_epoll_module.o \
objs/src/os/unix/ngx_linux_sendfile_chain.o \
objs/src/event/ngx_event_openssl.o \
objs/src/event/ngx_event_openssl_stapling.o \
objs/src/core/ngx_regex.o \
objs/src/http/ngx_http.o \
objs/src/http/ngx_http_core_module.o \
objs/src/http/ngx_http_special_response.o \
objs/src/http/ngx_http_request.o \
objs/src/http/ngx_http_parse.o \
objs/src/http/modules/ngx_http_log_module.o \
objs/src/http/ngx_http_request_body.o \
objs/src/http/ngx_http_variables.o \
objs/src/http/ngx_http_script.o \
objs/src/http/ngx_http_upstream.o \
objs/src/http/ngx_http_upstream_round_robin.o \
objs/src/http/ngx_http_file_cache.o \
objs/src/http/ngx_http_write_filter_module.o \
objs/src/http/ngx_http_header_filter_module.o \
objs/src/http/modules/ngx_http_chunked_filter_module.o \
objs/src/http/v2/ngx_http_v2_filter_module.o \
objs/src/http/modules/ngx_http_range_filter_module.o \
objs/src/http/modules/ngx_http_gzip_filter_module.o \
objs/src/http/ngx_http_postpone_filter_module.o \
objs/src/http/modules/ngx_http_ssi_filter_module.o \
objs/src/http/modules/ngx_http_charset_filter_module.o \
objs/src/http/modules/ngx_http_userid_filter_module.o \
objs/src/http/modules/ngx_http_headers_filter_module.o \
objs/src/http/ngx_http_copy_filter_module.o \
objs/src/http/modules/ngx_http_not_modified_filter_module.o \
objs/src/http/v2/ngx_http_v2.o \
objs/src/http/v2/ngx_http_v2_table.o \
objs/src/http/v2/ngx_http_v2_huff_decode.o \
objs/src/http/v2/ngx_http_v2_huff_encode.o \
objs/src/http/v2/ngx_http_v2_module.o \
objs/src/http/modules/ngx_http_static_module.o \
objs/src/http/modules/ngx_http_autoindex_module.o \
objs/src/http/modules/ngx_http_index_module.o \
objs/src/http/modules/ngx_http_auth_basic_module.o \
objs/src/http/modules/ngx_http_access_module.o \
objs/src/http/modules/ngx_http_limit_conn_module.o \
objs/src/http/modules/ngx_http_limit_req_module.o \
objs/src/http/modules/ngx_http_geo_module.o \
objs/src/http/modules/ngx_http_map_module.o \
objs/src/http/modules/ngx_http_split_clients_module.o \
objs/src/http/modules/ngx_http_referer_module.o \
objs/src/http/modules/ngx_http_rewrite_module.o \
objs/src/http/modules/ngx_http_ssl_module.o \
objs/src/http/modules/ngx_http_proxy_module.o \
objs/src/http/modules/ngx_http_fastcgi_module.o \
objs/src/http/modules/ngx_http_uwsgi_module.o \
objs/src/http/modules/ngx_http_scgi_module.o \
objs/src/http/modules/ngx_http_memcached_module.o \
objs/src/http/modules/ngx_http_empty_gif_module.o \
objs/src/http/modules/ngx_http_browser_module.o \
objs/src/http/modules/ngx_http_upstream_hash_module.o \
objs/src/http/modules/ngx_http_upstream_ip_hash_module.o \
objs/src/http/modules/ngx_http_upstream_least_conn_module.o \
objs/src/http/modules/ngx_http_upstream_keepalive_module.o \
objs/src/http/modules/ngx_http_upstream_zone_module.o \
objs/src/http/modules/ngx_http_stub_status_module.o \
objs/addon/nginx-module/ngx_http_groonga_module.o \
objs/addon/src/ndk.o \
objs/addon/http/ngx_http_mruby_module.o \
objs/addon/http/ngx_http_mruby_core.o \
objs/addon/http/ngx_http_mruby_init.o \
objs/addon/http/ngx_http_mruby_request.o \
objs/addon/http/ngx_http_mruby_var.o \
objs/addon/http/ngx_http_mruby_connection.o \
objs/addon/http/ngx_http_mruby_server.o \
objs/addon/http/ngx_http_mruby_filter.o \
objs/addon/http/ngx_http_mruby_upstream.o \
objs/addon/http/ngx_http_mruby_ssl.o \
objs/ngx_modules.o \
-Wl,-z,relro -Wl,-z,now -ldl -lpthread -lcrypt -L/<<PKGBUILDDIR>>/lib/.libs -L/<<PKGBUILDDIR>>/vendor/onigmo-source/.libs -lgroonga -L/<<PKGBUILDDIR>>/vendor/mruby/.libs -lmruby -lm -L/usr/local/lib -L -lmruby -lpcre -lssl -lcrypto -ldl -lz \
-Wl,-E
make[6]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src/httpd'
make[4]: Entering directory '/<<PKGBUILDDIR>>/src'
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I.. -I../include -I../lib   -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../vendor/mruby-source/include  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o groonga-groonga.o `test -f 'groonga.c' || echo './'`groonga.c
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I.. -I../include -I../lib   -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o groonga_benchmark.o groonga_benchmark.c
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I.. -I../include -I../lib   -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o grndb.o grndb.c
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I.. -I../include -I../lib   -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o grnslap.o grnslap.c
In file included from ../include/groonga.h:22:0,
                 from ../lib/grn.h:761,
                 from ../lib/grn_str.h:21,
                 from groonga_benchmark.c:40:
groonga_benchmark.c: In function 'report_command':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:351:11: note: in expansion of macro 'GRN_TIME_VALUE'
   start = GRN_TIME_VALUE(start_time) - GRN_TIME_VALUE(&grntest_starttime);
           ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:351:40: note: in expansion of macro 'GRN_TIME_VALUE'
   start = GRN_TIME_VALUE(start_time) - GRN_TIME_VALUE(&grntest_starttime);
                                        ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:352:9: note: in expansion of macro 'GRN_TIME_VALUE'
   end = GRN_TIME_VALUE(end_time) - GRN_TIME_VALUE(&grntest_starttime);
         ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:352:36: note: in expansion of macro 'GRN_TIME_VALUE'
   end = GRN_TIME_VALUE(end_time) - GRN_TIME_VALUE(&grntest_starttime);
                                    ^~~~~~~~~~~~~~
groonga_benchmark.c: In function 'output_result_final':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:381:13: note: in expansion of macro 'GRN_TIME_VALUE'
   latency = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_starttime);
             ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:381:41: note: in expansion of macro 'GRN_TIME_VALUE'
   latency = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_starttime);
                                         ^~~~~~~~~~~~~~
groonga_benchmark.c: In function 'open_socket':
groonga_benchmark.c:474:13: warning: cast increases required alignment of target type [-Wcast-align]
   inaddr = *(u_long*)(servhost->h_addr_list[0]);
             ^
In file included from ../include/groonga.h:22:0,
                 from ../lib/grn.h:761,
                 from ../lib/grn_str.h:21,
                 from groonga_benchmark.c:40:
groonga_benchmark.c: In function 'do_load_command':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:764:19: note: in expansion of macro 'GRN_TIME_VALUE'
     *load_start = GRN_TIME_VALUE(&start_time);
                   ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:777:14: note: in expansion of macro 'GRN_TIME_VALUE'
       self = GRN_TIME_VALUE(&end_time) - *load_start;
              ^~~~~~~~~~~~~~
grnslap.c: In function 'msg_handler':
grnslap.c:161:16: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *m = (grn_msg *)msg;
                ^
grnslap.c:162:19: warning: cast increases required alignment of target type [-Wcast-align]
   grn_com *com = ((grn_msg *)msg)->u.peer;
                   ^
groonga_benchmark.c: In function 'do_command':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:863:14: note: in expansion of macro 'GRN_TIME_VALUE'
       self = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&start_time);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:863:42: note: in expansion of macro 'GRN_TIME_VALUE'
       self = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&start_time);
                                          ^~~~~~~~~~~~~~
groonga_benchmark.c: In function 'worker_sub':
../include/groonga/groonga.h:1493:40: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE_AT(obj,offset) (((grn_obj **)GRN_BULK_HEAD(obj))[offset])
                                        ^
groonga_benchmark.c:1037:19: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         command = GRN_PTR_VALUE_AT(commands, i);
                   ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:1065:24: note: in expansion of macro 'GRN_TIME_VALUE'
   total_elapsed_time = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_starttime);
                        ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:1065:52: note: in expansion of macro 'GRN_TIME_VALUE'
   total_elapsed_time = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_starttime);
                                                    ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:1066:22: note: in expansion of macro 'GRN_TIME_VALUE'
   job_elapsed_time = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_jobs_start);
                      ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:1066:50: note: in expansion of macro 'GRN_TIME_VALUE'
   job_elapsed_time = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_jobs_start);
                                                  ^~~~~~~~~~~~~~
groonga_benchmark.c: In function 'main':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:3095:18: note: in expansion of macro 'GRN_TIME_VALUE'
   sec = (time_t)(GRN_TIME_VALUE(&grntest_starttime)/1000000);
                  ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:3103:15: note: in expansion of macro 'GRN_TIME_VALUE'
               GRN_TIME_VALUE(&grntest_starttime), grn_get_version());
               ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1472:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:3108:15: note: in expansion of macro 'GRN_TIME_VALUE'
               GRN_TIME_VALUE(&grntest_starttime), grn_get_version());
               ^~~~~~~~~~~~~~
groonga.c: In function 'request_timer_register':
groonga.c:596:10: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
   return (void *)(uint64_t)id;
          ^
groonga.c: In function 'request_timer_unregister':
groonga.c:604:23: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
   grn_id id = (grn_id)(uint64_t)timer_id;
                       ^
groonga.c: In function 'do_mbreq':
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:1934:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from ../lib/grn.h:761,
                 from groonga.c:29:
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:1944:20: note: in expansion of macro 'GRN_UINT32_VALUE'
           expire = GRN_UINT32_VALUE(&expire_buf);
                    ^~~~~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:1950:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:1957:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:1960:14: warning: cast increases required alignment of target type [-Wcast-align]
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&cas_buf);
              ^
groonga.c:1903:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:1903:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~
groonga.c:1960:43: note: in expansion of macro 'GRN_UINT64_VALUE'
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&cas_buf);
                                           ^~~~~~~~~~~~~~~~
groonga.c:1982:26: warning: cast increases required alignment of target type [-Wcast-align]
       uint32_t flags = *((uint32_t *)body);
                          ^
In file included from /usr/include/netdb.h:27:0,
                 from ../lib/grn_com.h:26,
                 from groonga.c:31:
groonga.c:1983:33: warning: cast increases required alignment of target type [-Wcast-align]
       uint32_t expire = ntohl(*((uint32_t *)(body + 4)));
                                 ^
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:1997:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2003:13: note: in expansion of macro 'GRN_MSG_MBRES'
             GRN_MSG_MBRES({
             ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2029:15: note: in expansion of macro 'GRN_MSG_MBRES'
               GRN_MSG_MBRES({
               ^~~~~~~~~~~~~
groonga.c:2030:18: warning: cast increases required alignment of target type [-Wcast-align]
                 ((grn_msg *)re)->header.cas = cas_id;
                  ^
groonga.c:1903:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~
In file included from ../include/groonga.h:22:0,
                 from ../lib/grn.h:761,
                 from groonga.c:29:
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:2043:23: note: in expansion of macro 'GRN_UINT32_VALUE'
             oexpire = GRN_UINT32_VALUE(&uint32_buf);
                       ^~~~~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2050:17: note: in expansion of macro 'GRN_MSG_MBRES'
                 GRN_MSG_MBRES({
                 ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2057:15: note: in expansion of macro 'GRN_MSG_MBRES'
               GRN_MSG_MBRES({
               ^~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from ../lib/grn.h:761,
                 from groonga.c:29:
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:2068:34: note: in expansion of macro 'GRN_UINT64_VALUE'
               if (header->cas != GRN_UINT64_VALUE(&cas_buf)) {
                                  ^~~~~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2069:17: note: in expansion of macro 'GRN_MSG_MBRES'
                 GRN_MSG_MBRES({
                 ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2095:17: note: in expansion of macro 'GRN_MSG_MBRES'
                 GRN_MSG_MBRES({
                 ^~~~~~~~~~~~~
groonga.c:2096:20: warning: cast increases required alignment of target type [-Wcast-align]
                   ((grn_msg *)re)->header.cas = cas_id;
                    ^
groonga.c:1903:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2117:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2122:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
In file included from /usr/include/netdb.h:27:0,
                 from ../lib/grn_com.h:26,
                 from groonga.c:31:
groonga.c:2141:33: warning: cast increases required alignment of target type [-Wcast-align]
       uint32_t expire = ntohl(*((uint32_t *)(body + 16)));
                                 ^
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2151:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from ../lib/grn.h:761,
                 from groonga.c:29:
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:2168:21: note: in expansion of macro 'GRN_UINT32_VALUE'
           oexpire = GRN_UINT32_VALUE(&uint32_buf);
                     ^~~~~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2173:15: note: in expansion of macro 'GRN_MSG_MBRES'
               GRN_MSG_MBRES({
               ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2201:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:2204:28: warning: cast increases required alignment of target type [-Wcast-align]
           grn_hton(&delta, (uint64_t *)GRN_BULK_HEAD(re), 8);
                            ^
groonga.c:1903:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~
groonga.c:2204:11: note: in expansion of macro 'grn_hton'
           grn_hton(&delta, (uint64_t *)GRN_BULK_HEAD(re), 8);
           ^~~~~~~~
In file included from /usr/include/netdb.h:27:0,
                 from ../lib/grn_com.h:26,
                 from groonga.c:31:
groonga.c:2221:26: warning: cast increases required alignment of target type [-Wcast-align]
         expire = ntohl(*((uint32_t *)(body)));
                          ^
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2243:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2253:5: note: in expansion of macro 'GRN_MSG_MBRES'
     GRN_MSG_MBRES({
     ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2268:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from ../lib/grn.h:761,
                 from groonga.c:29:
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:2277:18: note: in expansion of macro 'GRN_UINT32_VALUE'
         expire = GRN_UINT32_VALUE(&uint32_buf);
                  ^~~~~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2281:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2288:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I.. -I../include -I../lib   -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o groonga_mruby.o groonga_mruby.c
groonga.c:2292:14: warning: cast increases required alignment of target type [-Wcast-align]
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&uint64_buf);
              ^
groonga.c:1903:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:1903:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~
groonga.c:2292:43: note: in expansion of macro 'GRN_UINT64_VALUE'
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&uint64_buf);
                                           ^~~~~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2314:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2324:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2333:7: note: in expansion of macro 'GRN_MSG_MBRES'
       GRN_MSG_MBRES({
       ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2344:5: note: in expansion of macro 'GRN_MSG_MBRES'
     GRN_MSG_MBRES({
     ^~~~~~~~~~~~~
groonga.c: In function 'h_worker':
groonga.c:2416:14: warning: cast increases required alignment of target type [-Wcast-align]
     hc.msg = (grn_msg *)msg;
              ^
groonga.c: In function 'h_handler':
groonga.c:2437:19: warning: cast increases required alignment of target type [-Wcast-align]
   grn_com *com = ((grn_msg *)msg)->u.peer;
                   ^
groonga.c:2446:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)msg)->u.fd = fd;
      ^
groonga.c: In function 'g_worker':
groonga.c:2515:29: warning: cast increases required alignment of target type [-Wcast-align]
                (edge->msg = (grn_msg *)grn_com_queue_deque(ctx, &edge->recv_new))) {
                             ^
groonga.c: In function 'g_output':
groonga.c:2582:36: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *req = edge->msg, *msg = (grn_msg *)ctx->impl->output.buf;
                                    ^
groonga.c: In function 'g_handler':
groonga.c:2600:19: warning: cast increases required alignment of target type [-Wcast-align]
   grn_com *com = ((grn_msg *)msg)->u.peer;
                   ^
groonga.c:2617:33: warning: cast increases required alignment of target type [-Wcast-align]
     edge = grn_edges_add(ctx, &((grn_msg *)msg)->edge_id, &added);
                                 ^
groonga.c: In function 'send_ready_notify':
groonga.c:792:5: warning: ignoring return value of 'write', declared with attribute warn_unused_result [-Wunused-result]
     write(ready_notify_pipe[PIPE_WRITE],
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           ready_notify_message,
           ~~~~~~~~~~~~~~~~~~~~~
           strlen(ready_notify_message));
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o grndb grndb.o ../lib/libgroonga.la -lmsgpackc -lz -ldl -lpthread -lm  
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o grnslap grnslap.o ../lib/libgroonga.la -lmsgpackc -lz -ldl -lpthread -lm  
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/grndb grndb.o  ../lib/.libs/libgroonga.so -lmsgpackc -lz -ldl -lpthread -lm
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/grnslap grnslap.o  ../lib/.libs/libgroonga.so -lmsgpackc -lz -ldl -lpthread -lm
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o groonga-mruby groonga_mruby.o ../lib/libgroonga.la -lmsgpackc -lz -ldl -lpthread -lm  
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/groonga-mruby groonga_mruby.o  ../lib/.libs/libgroonga.so -lmsgpackc -lz -ldl -lpthread -lm
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o groonga-benchmark groonga_benchmark.o ../lib/libgroonga.la -lmsgpackc -lz -ldl -lpthread -lm  
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/groonga-benchmark groonga_benchmark.o  ../lib/.libs/libgroonga.so -lmsgpackc -lz -ldl -lpthread -lm
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -no-undefined -Wl,-z,relro -Wl,-z,now -o groonga groonga-groonga.o ../lib/libgroonga.la  -lmsgpackc -lz -ldl -lpthread -lm  
libtool: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/groonga groonga-groonga.o  ../lib/.libs/libgroonga.so -lmsgpackc -lz -ldl -lpthread -lm
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/src'
Making all in examples
make[3]: Entering directory '/<<PKGBUILDDIR>>/examples'
Making all in dictionary
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary'
Making all in edict
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/edict'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/edict'
Making all in eijiro
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/eijiro'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/eijiro'
Making all in gene95
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/gene95'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/gene95'
Making all in jmdict
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/jmdict'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/jmdict'
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/examples'
Making all in test
make[3]: Entering directory '/<<PKGBUILDDIR>>/test'
Making all in unit
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/unit'
Making all in lib
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/lib'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/lib'
Making all in fixtures
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
Making all in stress
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/stress'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/stress'
Making all in inverted-index
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/inverted-index'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/inverted-index'
Making all in plugins
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/plugins'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/plugins'
Making all in geo
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/geo'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/geo'
Making all in story
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
Making all in taiyaki
make[7]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story/taiyaki'
make[7]: Nothing to be done for 'all'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story/taiyaki'
make[7]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[7]: Nothing to be done for 'all-am'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
make[6]: Nothing to be done for 'all-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
Making all in util
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/util'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/util'
Making all in core
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core'
Making all in dat
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core/dat'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core/dat'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core'
make[6]: Nothing to be done for 'all-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core'
Making all in story
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/story'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/story'
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/unit'
Making all in command
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/command'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/command'
make[4]: Entering directory '/<<PKGBUILDDIR>>/test'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/test'
Making all in benchmark
make[3]: Entering directory '/<<PKGBUILDDIR>>/benchmark'
Making all in fixtures
make[4]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
Making all in geo-select
make[5]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures/geo-select'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures/geo-select'
make[5]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
Making all in lib
make[4]: Entering directory '/<<PKGBUILDDIR>>/benchmark/lib'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/lib'
make[4]: Entering directory '/<<PKGBUILDDIR>>/benchmark'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/benchmark'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/benchmark'
Making all in packages
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages'
Making all in apt
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/apt'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/apt'
Making all in ubuntu
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/ubuntu'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/ubuntu'
Making all in rpm
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm'
Making all in centos
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm/centos'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm/centos'
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm'
Making all in yum
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/yum'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/yum'
Making all in source
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/source'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/source'
Making all in windows
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/windows'
Making all in patches
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/windows/patches'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows/patches'
Making all in language-files
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/windows/language-files'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows/language-files'
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/windows'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages'
Making all in data
make[3]: Entering directory '/<<PKGBUILDDIR>>/data'
Making all in html
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/html'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/html'
Making all in munin
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/munin'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/munin'
Making all in init.d
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/init.d'
Making all in centos
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos'
Making all in sysconfig
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos/sysconfig'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos/sysconfig'
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[6]: Nothing to be done for 'all-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/init.d'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d'
Making all in logrotate.d
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d'
Making all in centos
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d/centos'
make[5]: Nothing to be done for 'all'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d/centos'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d'
Making all in systemd
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/systemd'
Making all in centos
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos'
Making all in sysconfig
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos/sysconfig'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos/sysconfig'
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[6]: Nothing to be done for 'all-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/systemd'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd'
Making all in scripts
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/scripts'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/scripts'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data'
Making all in tools
make[3]: Entering directory '/<<PKGBUILDDIR>>/tools'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/<<PKGBUILDDIR>>/tools'
Making all in doc
make[3]: Entering directory '/<<PKGBUILDDIR>>/doc'
make  all-recursive
make[4]: Entering directory '/<<PKGBUILDDIR>>/doc'
Making all in locale
make[5]: Entering directory '/<<PKGBUILDDIR>>/doc/locale'
Making all in en
make[6]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en'
make  all-recursive
make[7]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en'
Making all in LC_MESSAGES
make[8]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en/LC_MESSAGES'
make  all-am
make[9]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en/LC_MESSAGES'
make[9]: Nothing to be done for 'all-am'.
make[9]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en/LC_MESSAGES'
make[8]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en/LC_MESSAGES'
make[8]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/en'
make[8]: Nothing to be done for 'all-am'.
make[8]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en'
Making all in ja
make[6]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make  all-recursive
make[7]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja'
Making all in LC_MESSAGES
make[8]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make  all-am
make[9]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[9]: Nothing to be done for 'all-am'.
make[9]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[8]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[8]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[8]: Nothing to be done for 'all-am'.
make[8]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[6]: Entering directory '/<<PKGBUILDDIR>>/doc/locale'
make[6]: Nothing to be done for 'all-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale'
make[5]: Entering directory '/<<PKGBUILDDIR>>/doc'
make[5]: Nothing to be done for 'all-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/doc'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/doc'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/doc'
make[3]: Entering directory '/<<PKGBUILDDIR>>'
make[3]: Leaving directory '/<<PKGBUILDDIR>>'
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
 fakeroot debian/rules binary-arch
dh binary-arch
   dh_testroot -a
   dh_prep -a
   dh_installdirs -a
   dh_auto_install -a
	make -j4 install DESTDIR=/<<PKGBUILDDIR>>/debian/tmp AM_UPDATE_INFO_DIR=no
make[1]: Entering directory '/<<PKGBUILDDIR>>'
Making install in build
make[2]: Entering directory '/<<PKGBUILDDIR>>/build'
Making install in cmake_modules
make[3]: Entering directory '/<<PKGBUILDDIR>>/build/cmake_modules'
make[4]: Entering directory '/<<PKGBUILDDIR>>/build/cmake_modules'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/build/cmake_modules'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/build/cmake_modules'
make[3]: Entering directory '/<<PKGBUILDDIR>>/build'
make[4]: Entering directory '/<<PKGBUILDDIR>>/build'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/build'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/build'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/build'
Making install in include
make[2]: Entering directory '/<<PKGBUILDDIR>>/include'
Making install in groonga
make[3]: Entering directory '/<<PKGBUILDDIR>>/include/groonga'
make[4]: Entering directory '/<<PKGBUILDDIR>>/include/groonga'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/include/groonga/groonga'
 /usr/bin/install -c -m 644 accessor.h array.h column.h command.h config.h dat.h db.h dump.h error.h expr.h file_reader.h hash.h geo.h groonga.h id.h ii.h obj.h operator.h output.h pat.h plugin.h portability.h request_canceler.h request_timer.h scorer.h table.h thread.h time.h token.h tokenizer.h token_filter.h type.h nfkc.h normalizer.h util.h window_function.h windows.h windows_event_logger.h '/<<PKGBUILDDIR>>/debian/tmp/usr/include/groonga/groonga'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/include/groonga'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/include/groonga'
make[3]: Entering directory '/<<PKGBUILDDIR>>/include'
make[4]: Entering directory '/<<PKGBUILDDIR>>/include'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/include/groonga'
 /usr/bin/install -c -m 644 groonga.h '/<<PKGBUILDDIR>>/debian/tmp/usr/include/groonga'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/include'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/include'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/include'
Making install in vendor
make[2]: Entering directory '/<<PKGBUILDDIR>>/vendor'
Making install in lz4
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor/lz4'
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/lz4'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/lz4'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/vendor/lz4'
Making install in onigmo
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo'
cd ../onigmo-source && make all
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
make  all-recursive
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
Making all in .
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
Making all in sample
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source/sample'
make[6]: Nothing to be done for 'all'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source/sample'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/vendor/onigmo'
Making install in mecab
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor/mecab'
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/mecab'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mecab'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mecab'
Making install in message_pack
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor/message_pack'
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/message_pack'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/message_pack'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/vendor/message_pack'
Making install in mruby
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor/mruby'
make  install-am
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/mruby'
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/mruby'
make[5]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/mruby'
 /usr/bin/install -c -m 644 LEGAL '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/mruby'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mruby'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mruby'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/vendor/mruby'
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor'
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/vendor'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/vendor'
Making install in lib
make[2]: Entering directory '/<<PKGBUILDDIR>>/lib'
make  install-recursive
make[3]: Entering directory '/<<PKGBUILDDIR>>/lib'
Making install in dat
make[4]: Entering directory '/<<PKGBUILDDIR>>/lib/dat'
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/dat'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/dat'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/lib/dat'
Making install in mrb
make[4]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb'
Making install in scripts
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
Making install in command_line
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/command_line'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/command_line'
make[7]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line'
 /usr/bin/install -c -m 644 grndb.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/command_line'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/command_line'
Making install in context
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/context'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/context'
make[7]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context'
 /usr/bin/install -c -m 644 error_level.rb rc.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/context'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/context'
Making install in expression_tree
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/expression_tree'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/expression_tree'
make[7]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree'
 /usr/bin/install -c -m 644 accessor.rb binary_operation.rb constant.rb function_call.rb index_column.rb logical_operation.rb options.rb procedure.rb variable.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/expression_tree'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/expression_tree'
Making install in initialize
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/initialize'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/initialize'
make[7]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize'
 /usr/bin/install -c -m 644 pre.rb post.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/initialize'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/initialize'
Making install in logger
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/logger'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/logger'
make[7]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger'
 /usr/bin/install -c -m 644 level.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/logger'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/logger'
Making install in query_logger
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/query_logger'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/query_logger'
make[7]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger'
 /usr/bin/install -c -m 644 flag.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/query_logger'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts/query_logger'
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[7]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[7]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby'
 /usr/bin/install -c -m 644 accessor.rb backtrace_entry.rb command.rb command_line_parser.rb context.rb database.rb error.rb eval_context.rb expression.rb expression_rewriter.rb expression_rewriters.rb expression_size_estimator.rb expression_tree.rb expression_tree_builder.rb fixed_size_column.rb id.rb index_column.rb index_cursor.rb index_info.rb logger.rb object.rb operator.rb plugin_loader.rb query_logger.rb record.rb require.rb scan_info.rb scan_info_builder.rb scan_info_data.rb scan_info_search_index.rb table.rb table_cursor.rb variable_size_column.rb writer.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb/scripts'
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb'
make[6]: Entering directory '/<<PKGBUILDDIR>>/lib/mrb'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/lib/mrb'
Making install in proc
make[4]: Entering directory '/<<PKGBUILDDIR>>/lib/proc'
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/proc'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/proc'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/lib/proc'
Making install in ts
make[4]: Entering directory '/<<PKGBUILDDIR>>/lib/ts'
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib/ts'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib/ts'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/lib/ts'
make[4]: Entering directory '/<<PKGBUILDDIR>>/lib'
make[5]: Entering directory '/<<PKGBUILDDIR>>/lib'
make[5]: Nothing to be done for 'install-data-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf'
 /bin/bash ../libtool   --mode=install /usr/bin/install -c   libgroonga.la '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf'
libtool: install: /usr/bin/install -c .libs/libgroonga.so.0.0.0 /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/libgroonga.so.0.0.0
libtool: install: (cd /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf && { ln -s -f libgroonga.so.0.0.0 libgroonga.so.0 || { rm -f libgroonga.so.0 && ln -s libgroonga.so.0.0.0 libgroonga.so.0; }; })
libtool: install: (cd /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf && { ln -s -f libgroonga.so.0.0.0 libgroonga.so || { rm -f libgroonga.so && ln -s libgroonga.so.0.0.0 libgroonga.so; }; })
libtool: install: /usr/bin/install -c .libs/libgroonga.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/libgroonga.la
libtool: warning: remember to run 'libtool --finish /usr/lib/arm-linux-gnueabihf'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/lib'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/lib'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/lib'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/lib'
Making install in plugins
make[2]: Entering directory '/<<PKGBUILDDIR>>/plugins'
Making install in tokenizers
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/tokenizers'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/tokenizers'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers'
 /bin/bash ../../libtool   --mode=install /usr/bin/install -c   mecab.la '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers'
libtool: warning: relinking 'mecab.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/tokenizers; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -L/usr/lib -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 -lmecab -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,mecab.so -o .libs/mecab.so
libtool: install: /usr/bin/install -c .libs/mecab.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers/mecab.so
libtool: install: /usr/bin/install -c .libs/mecab.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers/mecab.la
libtool: warning: remember to run 'libtool --finish /usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/tokenizers'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/tokenizers'
Making install in suggest
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/suggest'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/suggest'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest'
 /bin/bash ../../libtool   --mode=install /usr/bin/install -c   suggest.la '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest'
libtool: warning: relinking 'suggest.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/suggest; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o suggest.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest suggest.lo ../../lib/libgroonga.la -lmsgpackc -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/suggest.o   -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga -lmsgpackc  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,suggest.so -o .libs/suggest.so
libtool: install: /usr/bin/install -c .libs/suggest.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest/suggest.so
libtool: install: /usr/bin/install -c .libs/suggest.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest/suggest.la
libtool: warning: remember to run 'libtool --finish /usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/suggest'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/suggest'
Making install in query_expanders
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/query_expanders'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/query_expanders'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders'
 /bin/bash ../../libtool   --mode=install /usr/bin/install -c   tsv.la '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders'
libtool: warning: relinking 'tsv.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/query_expanders; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o tsv.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders tsv.lo ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/tsv.o   -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,tsv.so -o .libs/tsv.so
libtool: install: /usr/bin/install -c .libs/tsv.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders/tsv.so
libtool: install: /usr/bin/install -c .libs/tsv.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders/tsv.la
libtool: warning: remember to run 'libtool --finish /usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/query_expanders'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/query_expanders'
Making install in ruby
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/ruby'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/ruby'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/ruby'
 /usr/bin/install -c -m 644 eval.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/ruby'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/ruby'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/ruby'
Making install in token_filters
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/token_filters'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/token_filters'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters'
 /bin/bash ../../libtool   --mode=install /usr/bin/install -c   stop_word.la stem.la '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters'
libtool: warning: relinking 'stop_word.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/token_filters; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o stop_word.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters stop_word.lo ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/stop_word.o   -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,stop_word.so -o .libs/stop_word.so
libtool: install: /usr/bin/install -c .libs/stop_word.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stop_word.so
libtool: install: /usr/bin/install -c .libs/stop_word.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stop_word.la
libtool: warning: relinking 'stem.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/token_filters; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o stem.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters stem_la-stem.lo ../../lib/libgroonga.la -lstemmer ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/stem_la-stem.o   -lstemmer -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,stem.so -o .libs/stem.so
libtool: install: /usr/bin/install -c .libs/stem.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stem.so
libtool: install: /usr/bin/install -c .libs/stem.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stem.la
libtool: warning: remember to run 'libtool --finish /usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/token_filters'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/token_filters'
Making install in sharding
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/sharding'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/sharding'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding'
 /usr/bin/install -c -m 644 logical_count.rb logical_enumerator.rb logical_parameters.rb logical_range_filter.rb logical_select.rb logical_shard_list.rb logical_table_remove.rb parameters.rb range_expression_builder.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/sharding'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/sharding'
Making install in functions
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/functions'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/functions'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions'
 /bin/bash ../../libtool   --mode=install /usr/bin/install -c   vector.la string.la number.la time.la '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions'
libtool: warning: relinking 'vector.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/functions; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o vector.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions vector.lo ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/vector.o   -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,vector.so -o .libs/vector.so
libtool: install: /usr/bin/install -c .libs/vector.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/vector.so
libtool: install: /usr/bin/install -c .libs/vector.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/vector.la
libtool: warning: relinking 'string.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/functions; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o string.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions string.lo ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/string.o   -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,string.so -o .libs/string.so
libtool: install: /usr/bin/install -c .libs/string.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/string.so
libtool: install: /usr/bin/install -c .libs/string.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/string.la
libtool: warning: relinking 'number.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/functions; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o number.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions number.lo -lm ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/number.o   -lm -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,number.so -o .libs/number.so
libtool: install: /usr/bin/install -c .libs/number.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/number.so
libtool: install: /usr/bin/install -c .libs/number.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/number.la
libtool: warning: relinking 'time.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/functions; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wno-declaration-after-statement -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -Wl,-z,relro -Wl,-z,now -o time.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions time.lo ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/time.o   -L/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lgroonga  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,time.so -o .libs/time.so
libtool: install: /usr/bin/install -c .libs/time.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/time.so
libtool: install: /usr/bin/install -c .libs/time.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/time.la
libtool: warning: remember to run 'libtool --finish /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/functions'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/functions'
Making install in expression_rewriters
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/expression_rewriters'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/expression_rewriters'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/expression_rewriters'
 /usr/bin/install -c -m 644 optimizer.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/expression_rewriters'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/expression_rewriters'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/expression_rewriters'
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins'
 /usr/bin/install -c -m 644 sharding.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/plugins'
Making install in src
make[2]: Entering directory '/<<PKGBUILDDIR>>/src'
Making install in suggest
make[3]: Entering directory '/<<PKGBUILDDIR>>/src/suggest'
make[4]: Entering directory '/<<PKGBUILDDIR>>/src/suggest'
make[4]: Nothing to be done for 'install-data-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/bin'
  /bin/bash ../../libtool   --mode=install /usr/bin/install -c groonga-suggest-create-dataset groonga-suggest-learner groonga-suggest-httpd '/<<PKGBUILDDIR>>/debian/tmp/usr/bin'
libtool: warning: '../../lib/libgroonga.la' has not been installed in '/usr/lib/arm-linux-gnueabihf'
libtool: install: /usr/bin/install -c .libs/groonga-suggest-create-dataset /<<PKGBUILDDIR>>/debian/tmp/usr/bin/groonga-suggest-create-dataset
libtool: warning: '../../lib/libgroonga.la' has not been installed in '/usr/lib/arm-linux-gnueabihf'
libtool: install: /usr/bin/install -c .libs/groonga-suggest-learner /<<PKGBUILDDIR>>/debian/tmp/usr/bin/groonga-suggest-learner
libtool: warning: '../../lib/libgroonga.la' has not been installed in '/usr/lib/arm-linux-gnueabihf'
libtool: install: /usr/bin/install -c .libs/groonga-suggest-httpd /<<PKGBUILDDIR>>/debian/tmp/usr/bin/groonga-suggest-httpd
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src/suggest'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/src/suggest'
Making install in httpd
make[3]: Entering directory '/<<PKGBUILDDIR>>/src/httpd'
(cd ../../vendor/nginx-1.11.8 && make build)
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make -f objs/Makefile
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make[5]: Nothing to be done for 'build'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make[4]: Entering directory '/<<PKGBUILDDIR>>/src/httpd'
(cd ../../vendor/nginx-1.11.8 && make install)
make[4]: Nothing to be done for 'install-data-am'.
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make -f objs/Makefile install
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
test -d '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd' || mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
test -d '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin' \
	|| mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin'
test ! -f '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin/groonga-httpd' \
	|| mv '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin/groonga-httpd' \
		'/<<PKGBUILDDIR>>/debian/tmp/usr/sbin/groonga-httpd.old'
cp objs/nginx '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin/groonga-httpd'
test -d '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd' \
	|| mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/koi-win '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/koi-utf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/win-utf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/mime.types' \
	|| cp conf/mime.types '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/mime.types '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/mime.types.default'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/fastcgi_params' \
	|| cp conf/fastcgi_params '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/fastcgi_params \
	'/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/fastcgi_params.default'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/fastcgi.conf' \
	|| cp conf/fastcgi.conf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/fastcgi.conf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/fastcgi.conf.default'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/uwsgi_params' \
	|| cp conf/uwsgi_params '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/uwsgi_params \
	'/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/uwsgi_params.default'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/scgi_params' \
	|| cp conf/scgi_params '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/scgi_params \
	'/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/scgi_params.default'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/groonga-httpd.conf' \
	|| cp conf/nginx.conf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/groonga-httpd.conf'
cp conf/nginx.conf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/nginx.conf.default'
test -d '/<<PKGBUILDDIR>>/debian/tmp/var/run' \
	|| mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/var/run'
test -d '/<<PKGBUILDDIR>>/debian/tmp/var/log/groonga/httpd' \
	|| mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/var/log/groonga/httpd'
test -d '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/html' \
	|| cp -R docs/html '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
test -d '/<<PKGBUILDDIR>>/debian/tmp/var/log/groonga/httpd' \
	|| mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/var/log/groonga/httpd'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.8'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src/httpd'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/src/httpd'
make[3]: Entering directory '/<<PKGBUILDDIR>>/src'
make[4]: Entering directory '/<<PKGBUILDDIR>>/src'
make[4]: Nothing to be done for 'install-data-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/bin'
  /bin/bash ../libtool   --mode=install /usr/bin/install -c groonga groonga-benchmark grndb '/<<PKGBUILDDIR>>/debian/tmp/usr/bin'
libtool: warning: '../lib/libgroonga.la' has not been installed in '/usr/lib/arm-linux-gnueabihf'
libtool: install: /usr/bin/install -c .libs/groonga /<<PKGBUILDDIR>>/debian/tmp/usr/bin/groonga
libtool: warning: '../lib/libgroonga.la' has not been installed in '/usr/lib/arm-linux-gnueabihf'
libtool: install: /usr/bin/install -c .libs/groonga-benchmark /<<PKGBUILDDIR>>/debian/tmp/usr/bin/groonga-benchmark
libtool: warning: '../lib/libgroonga.la' has not been installed in '/usr/lib/arm-linux-gnueabihf'
libtool: install: /usr/bin/install -c .libs/grndb /<<PKGBUILDDIR>>/debian/tmp/usr/bin/grndb
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/src'
Making install in examples
make[2]: Entering directory '/<<PKGBUILDDIR>>/examples'
Making install in dictionary
make[3]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary'
Making install in edict
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/edict'
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/edict'
make[5]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/edict'
 /usr/bin/install -c edict2grn.rb edict-import.sh '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/edict'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/edict'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/edict'
Making install in eijiro
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/eijiro'
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/eijiro'
make[5]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/eijiro'
 /usr/bin/install -c eijiro2grn.rb eijiro-import.sh '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/eijiro'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/eijiro'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/eijiro'
Making install in gene95
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/gene95'
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/gene95'
make[5]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/gene95'
 /usr/bin/install -c gene2grn.rb gene-import.sh '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/gene95'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/gene95'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/gene95'
Making install in jmdict
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/jmdict'
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary/jmdict'
make[5]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/jmdict'
 /usr/bin/install -c jmdict.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/jmdict'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/jmdict'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary/jmdict'
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[5]: Entering directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[5]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary'
 /usr/bin/install -c init-db.sh '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/css/smoothness'
 /usr/bin/install -c -m 644  html/css/smoothness/jquery-ui-1.8.12.custom.css '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/css/smoothness'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/css'
 /usr/bin/install -c -m 644  html/css/dictionary.css '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/css'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/js'
 /usr/bin/install -c -m 644  html/js/dictionary.js html/js/jquery-1.7.2.js html/js/jquery-ui-1.8.18.custom.js '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/js'
 /usr/bin/install -c -m 644  readme.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/.'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html'
 /usr/bin/install -c -m 644  html/index.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/css/smoothness/images'
 /usr/bin/install -c -m 644  html/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png html/css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png html/css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png html/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png html/css/smoothness/images/ui-bg_glass_75_dadada_1x400.png html/css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png html/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png html/css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png html/css/smoothness/images/ui-icons_222222_256x240.png html/css/smoothness/images/ui-icons_2e83ff_256x240.png html/css/smoothness/images/ui-icons_454545_256x240.png html/css/smoothness/images/ui-icons_888888_256x240.png html/css/smoothness/images/ui-icons_cd0a0a_256x240.png '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/examples/dictionary/html/css/smoothness/images'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/examples/dictionary'
make[3]: Entering directory '/<<PKGBUILDDIR>>/examples'
make[4]: Entering directory '/<<PKGBUILDDIR>>/examples'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/examples'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/examples'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/examples'
Making install in test
make[2]: Entering directory '/<<PKGBUILDDIR>>/test'
Making install in unit
make[3]: Entering directory '/<<PKGBUILDDIR>>/test/unit'
Making install in lib
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/unit/lib'
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/lib'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/lib'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/lib'
Making install in fixtures
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
Making install in stress
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/stress'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/stress'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/stress'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/stress'
Making install in inverted-index
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/inverted-index'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/inverted-index'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/inverted-index'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/inverted-index'
Making install in plugins
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/plugins'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/plugins'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/plugins'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/plugins'
Making install in geo
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/geo'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/geo'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/geo'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/geo'
Making install in story
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
Making install in taiyaki
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story/taiyaki'
make[7]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story/taiyaki'
make[7]: Nothing to be done for 'install-exec-am'.
make[7]: Nothing to be done for 'install-data-am'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story/taiyaki'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story/taiyaki'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[7]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[7]: Nothing to be done for 'install-exec-am'.
make[7]: Nothing to be done for 'install-data-am'.
make[7]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures/story'
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/fixtures'
Making install in util
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/unit/util'
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/util'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/util'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/util'
Making install in core
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core'
Making install in dat
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core/dat'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core/dat'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core/dat'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core/dat'
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core'
make[6]: Entering directory '/<<PKGBUILDDIR>>/test/unit/core'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/core'
Making install in story
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/unit/story'
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit/story'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/story'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/unit/story'
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/unit'
make[5]: Entering directory '/<<PKGBUILDDIR>>/test/unit'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/test/unit'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/unit'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/test/unit'
Making install in command
make[3]: Entering directory '/<<PKGBUILDDIR>>/test/command'
make[4]: Entering directory '/<<PKGBUILDDIR>>/test/command'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test/command'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/test/command'
make[3]: Entering directory '/<<PKGBUILDDIR>>/test'
make[4]: Entering directory '/<<PKGBUILDDIR>>/test'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/test'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/test'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/test'
Making install in benchmark
make[2]: Entering directory '/<<PKGBUILDDIR>>/benchmark'
Making install in fixtures
make[3]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
Making install in geo-select
make[4]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures/geo-select'
make[5]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures/geo-select'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures/geo-select'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures/geo-select'
make[4]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
make[5]: Entering directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/fixtures'
Making install in lib
make[3]: Entering directory '/<<PKGBUILDDIR>>/benchmark/lib'
make[4]: Entering directory '/<<PKGBUILDDIR>>/benchmark/lib'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/lib'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/benchmark/lib'
make[3]: Entering directory '/<<PKGBUILDDIR>>/benchmark'
make[4]: Entering directory '/<<PKGBUILDDIR>>/benchmark'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/benchmark'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/benchmark'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/benchmark'
Making install in packages
make[2]: Entering directory '/<<PKGBUILDDIR>>/packages'
Making install in apt
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages/apt'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/apt'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/apt'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages/apt'
Making install in ubuntu
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages/ubuntu'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/ubuntu'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/ubuntu'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages/ubuntu'
Making install in rpm
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm'
Making install in centos
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm/centos'
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm/centos'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm/centos'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm/centos'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm'
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/rpm'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages/rpm'
Making install in yum
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages/yum'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/yum'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/yum'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages/yum'
Making install in source
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages/source'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/source'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/source'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages/source'
Making install in windows
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages/windows'
Making install in patches
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/windows/patches'
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/windows/patches'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows/patches'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows/patches'
Making install in language-files
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/windows/language-files'
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/windows/language-files'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows/language-files'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows/language-files'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages/windows'
make[5]: Entering directory '/<<PKGBUILDDIR>>/packages/windows'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages/windows'
make[3]: Entering directory '/<<PKGBUILDDIR>>/packages'
make[4]: Entering directory '/<<PKGBUILDDIR>>/packages'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/packages'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/packages'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/packages'
Making install in data
make[2]: Entering directory '/<<PKGBUILDDIR>>/data'
Making install in html
make[3]: Entering directory '/<<PKGBUILDDIR>>/data/html'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/html'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/css/redmond/images'
 /usr/bin/install -c -m 644  admin/css/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png admin/css/redmond/images/ui-bg_flat_55_fbec88_40x100.png admin/css/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png admin/css/redmond/images/ui-bg_glass_85_dfeffc_1x400.png admin/css/redmond/images/ui-bg_glass_95_fef1ec_1x400.png admin/css/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png admin/css/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png admin/css/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png admin/css/redmond/images/ui-icons_217bc0_256x240.png admin/css/redmond/images/ui-icons_2e83ff_256x240.png admin/css/redmond/images/ui-icons_469bdd_256x240.png admin/css/redmond/images/ui-icons_6da8d5_256x240.png admin/css/redmond/images/ui-icons_cd0a0a_256x240.png admin/css/redmond/images/ui-icons_d8e7f3_256x240.png admin/css/redmond/images/ui-icons_f9bd01_256x240.png '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/css/redmond/images'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/images'
 /usr/bin/install -c -m 644  admin/images/groonga.png admin/images/groonga.svg admin/images/loading.gif '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/images'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/js'
 /usr/bin/install -c -m 644  admin/js/groonga-admin.ja.js admin/js/groonga-admin.js admin/js/jquery-1.7.2.js admin/js/jquery-ui-1.8.18.custom.js admin/js/jquery.flot-0.8.3.js admin/js/jquery.flot.license.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/js'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/css/redmond'
 /usr/bin/install -c -m 644  admin/css/redmond/jquery-ui-1.8.18.custom.css '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/css/redmond'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/css'
 /usr/bin/install -c -m 644  admin/css/groonga-admin.css '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin/css'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin'
 /usr/bin/install -c -m 644  admin/favicon.ico admin/favicon.png admin/favicon.svg admin/index.html admin/index.ja.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/html/admin'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/html'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data/html'
Making install in munin
make[3]: Entering directory '/<<PKGBUILDDIR>>/data/munin'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/munin'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/munin/plugins'
 /usr/bin/install -c groonga_cpu_load_ groonga_cpu_time_ groonga_status_ groonga_memory_ groonga_n_records_ groonga_query_performance_ groonga_disk_ groonga_throughput_ '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/munin/plugins'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/munin'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data/munin'
Making install in init.d
make[3]: Entering directory '/<<PKGBUILDDIR>>/data/init.d'
Making install in centos
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos'
Making install in sysconfig
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos/sysconfig'
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos/sysconfig'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos/sysconfig'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos/sysconfig'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d/centos'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/init.d'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/init.d'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data/init.d'
Making install in logrotate.d
make[3]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d'
Making install in centos
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d/centos'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d/centos'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d/centos'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d/centos'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/logrotate.d'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data/logrotate.d'
Making install in systemd
make[3]: Entering directory '/<<PKGBUILDDIR>>/data/systemd'
Making install in centos
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos'
Making install in sysconfig
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos/sysconfig'
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos/sysconfig'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos/sysconfig'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos/sysconfig'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[6]: Entering directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd/centos'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/systemd'
make[5]: Entering directory '/<<PKGBUILDDIR>>/data/systemd'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data/systemd'
Making install in scripts
make[3]: Entering directory '/<<PKGBUILDDIR>>/data/scripts'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/scripts'
make[4]: Nothing to be done for 'install-data-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin'
 /usr/bin/install -c groonga-httpd-restart '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/scripts'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data/scripts'
make[3]: Entering directory '/<<PKGBUILDDIR>>/data'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga'
 /usr/bin/install -c -m 644 groonga-httpd.conf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
 /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/_sources/reference/commands'
 /usr/bin/install -c -m 644  html/_sources/reference/commands/cache_limit.txt html/_sources/reference/commands/check.txt html/_sources/reference/commands/clearlock.txt html/_sources/reference/commands/column_copy.txt html/_sources/reference/commands/column_create.txt html/_sources/reference/commands/column_list.txt html/_sources/reference/commands/column_remove.txt html/_sources/reference/commands/column_rename.txt html/_sources/reference/commands/config_delete.txt html/_sources/reference/commands/config_get.txt html/_sources/reference/commands/config_set.txt html/_sources/reference/commands/database_unmap.txt html/_sources/reference/commands/define_selector.txt html/_sources/reference/commands/defrag.txt html/_sources/reference/commands/delete.txt html/_sources/reference/commands/dump.txt html/_sources/reference/commands/io_flush.txt html/_sources/reference/commands/load.txt html/_sources/reference/commands/lock_acquire.txt html/_sources/reference/commands/lock_clear.txt html/_sources/reference/commands/lock_release.txt html/_sources/reference/commands/log_level.txt html/_sources/reference/commands/log_put.txt html/_sources/reference/commands/log_reopen.txt html/_sources/reference/commands/logical_count.txt html/_sources/reference/commands/logical_parameters.txt html/_sources/reference/commands/logical_range_filter.txt html/_sources/reference/commands/logical_select.txt html/_sources/reference/commands/logical_shard_list.txt html/_sources/reference/commands/logical_table_remove.txt html/_sources/reference/commands/normalize.txt html/_sources/reference/commands/normalizer_list.txt html/_sources/reference/commands/object_exist.txt html/_sources/reference/commands/object_inspect.txt html/_sources/reference/commands/object_list.txt html/_sources/reference/commands/object_remove.txt html/_sources/reference/commands/plugin_register.txt html/_sources/reference/commands/plugin_unregister.txt html/_sources/reference/commands/query_expand.txt html/_sources/reference/commands/quit.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/commands'
 /usr/bin/install -c -m 644  html/reference/commands/cache_limit.html html/reference/commands/check.html html/reference/commands/clearlock.html html/reference/commands/column_copy.html html/reference/commands/column_create.html html/reference/commands/column_list.html html/reference/commands/column_remove.html html/reference/commands/column_rename.html html/reference/commands/config_delete.html html/reference/commands/config_get.html html/reference/commands/config_set.html html/reference/commands/database_unmap.html html/reference/commands/define_selector.html html/reference/commands/defrag.html html/reference/commands/delete.html html/reference/commands/dump.html html/reference/commands/io_flush.html html/reference/commands/load.html html/reference/commands/lock_acquire.html html/reference/commands/lock_clear.html html/reference/commands/lock_release.html html/reference/commands/log_level.html html/reference/commands/log_put.html html/reference/commands/log_reopen.html html/reference/commands/logical_count.html html/reference/commands/logical_parameters.html html/reference/commands/logical_range_filter.html html/reference/commands/logical_select.html html/reference/commands/logical_shard_list.html html/reference/commands/logical_table_remove.html html/reference/commands/normalize.html html/reference/commands/normalizer_list.html html/reference/commands/object_exist.html html/reference/commands/object_inspect.html html/reference/commands/object_list.html html/reference/commands/object_remove.html html/reference/commands/plugin_register.html html/reference/commands/plugin_unregister.html html/reference/commands/query_expand.html html/reference/commands/quit.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/news'
 /usr/bin/install -c -m 644  html/news/0.x.html html/news/1.0.x.html html/news/1.1.x.html html/news/1.2.x.html html/news/1.3.x.html html/news/2.x.html html/news/3.x.html html/news/4.x.html html/news/5.x.html html/news/senna.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/news'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference'
 /usr/bin/install -c -m 644  html/_sources/reference/alias.txt html/_sources/reference/api.txt html/_sources/reference/cast.txt html/_sources/reference/column.txt html/_sources/reference/command.txt html/_sources/reference/configuration.txt html/_sources/reference/executables.txt html/_sources/reference/function.txt html/_sources/reference/grn_expr.txt html/_sources/reference/indexing.txt html/_sources/reference/log.txt html/_sources/reference/normalizers.txt html/_sources/reference/operations.txt html/_sources/reference/output.txt html/_sources/reference/query_expanders.txt html/_sources/reference/regular_expression.txt html/_sources/reference/scorer.txt html/_sources/reference/sharding.txt html/_sources/reference/suggest.txt html/_sources/reference/tables.txt html/_sources/reference/token_filters.txt html/_sources/reference/tokenizers.txt html/_sources/reference/tuning.txt html/_sources/reference/types.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/grn_expr'
 /usr/bin/install -c -m 644  html/_sources/reference/grn_expr/query_syntax.txt html/_sources/reference/grn_expr/script_syntax.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/grn_expr'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/executables'
 /usr/bin/install -c -m 644  html/_sources/reference/executables/grndb.txt html/_sources/reference/executables/grnslap.txt html/_sources/reference/executables/groonga-benchmark.txt html/_sources/reference/executables/groonga-httpd.txt html/_sources/reference/executables/groonga-server-http.txt html/_sources/reference/executables/groonga-suggest-create-dataset.txt html/_sources/reference/executables/groonga-suggest-httpd.txt html/_sources/reference/executables/groonga-suggest-learner.txt html/_sources/reference/executables/groonga.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/executables'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/troubleshooting'
 /usr/bin/install -c -m 644  html/troubleshooting/different_results_with_the_same_keyword.html html/troubleshooting/mmap_cannot_allocate_memory.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/troubleshooting'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_images'
 /usr/bin/install -c -m 644  html/_images/geo-points.png html/_images/used-when-indexing.png html/_images/used-when-searching.png '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_images'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/tutorial'
 /usr/bin/install -c -m 644  html/tutorial/data.html html/tutorial/drilldown.html html/tutorial/index.html html/tutorial/introduction.html html/tutorial/lexicon.html html/tutorial/match_columns.html html/tutorial/micro_blog.html html/tutorial/network.html html/tutorial/patricia_trie.html html/tutorial/query_expansion.html html/tutorial/search.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/tutorial'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution'
 /usr/bin/install -c -m 644  html/contribution/development.html html/contribution/documentation.html html/contribution/report.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/server'
 /usr/bin/install -c -m 644  html/server/gqtp.html html/server/http.html html/server/memcached.html html/server/package.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/server'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources'
 /usr/bin/install -c -m 644  html/_sources/characteristic.txt html/_sources/client.txt html/_sources/community.txt html/_sources/contribution.txt html/_sources/development.txt html/_sources/index.txt html/_sources/install.txt html/_sources/limitations.txt html/_sources/news.txt html/_sources/reference.txt html/_sources/server.txt html/_sources/spec.txt html/_sources/troubleshooting.txt html/_sources/tutorial.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/development'
 /usr/bin/install -c -m 644  html/_sources/development/travis-ci.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/development'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/suggest'
 /usr/bin/install -c -m 644  html/_sources/reference/suggest/completion.txt html/_sources/reference/suggest/correction.txt html/_sources/reference/suggest/introduction.txt html/_sources/reference/suggest/suggestion.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/suggest'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/commands'
 /usr/bin/install -c -m 644  html/_sources/reference/commands/range_filter.txt html/_sources/reference/commands/register.txt html/_sources/reference/commands/reindex.txt html/_sources/reference/commands/request_cancel.txt html/_sources/reference/commands/ruby_eval.txt html/_sources/reference/commands/ruby_load.txt html/_sources/reference/commands/schema.txt html/_sources/reference/commands/select.txt html/_sources/reference/commands/shutdown.txt html/_sources/reference/commands/status.txt html/_sources/reference/commands/suggest.txt html/_sources/reference/commands/table_copy.txt html/_sources/reference/commands/table_create.txt html/_sources/reference/commands/table_list.txt html/_sources/reference/commands/table_remove.txt html/_sources/reference/commands/table_rename.txt html/_sources/reference/commands/table_tokenize.txt html/_sources/reference/commands/thread_limit.txt html/_sources/reference/commands/tokenize.txt html/_sources/reference/commands/tokenizer_list.txt html/_sources/reference/commands/truncate.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/news'
 /usr/bin/install -c -m 644  html/_sources/news/0.x.txt html/_sources/news/1.0.x.txt html/_sources/news/1.1.x.txt html/_sources/news/1.2.x.txt html/_sources/news/1.3.x.txt html/_sources/news/2.x.txt html/_sources/news/3.x.txt html/_sources/news/4.x.txt html/_sources/news/5.x.txt html/_sources/news/senna.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/news'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference'
 /usr/bin/install -c -m 644  html/reference/alias.html html/reference/api.html html/reference/cast.html html/reference/column.html html/reference/command.html html/reference/configuration.html html/reference/executables.html html/reference/function.html html/reference/grn_expr.html html/reference/indexing.html html/reference/log.html html/reference/normalizers.html html/reference/operations.html html/reference/output.html html/reference/query_expanders.html html/reference/regular_expression.html html/reference/scorer.html html/reference/sharding.html html/reference/suggest.html html/reference/tables.html html/reference/token_filters.html html/reference/tokenizers.html html/reference/tuning.html html/reference/types.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/grn_expr'
 /usr/bin/install -c -m 644  html/reference/grn_expr/query_syntax.html html/reference/grn_expr/script_syntax.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/grn_expr'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/executables'
 /usr/bin/install -c -m 644  html/reference/executables/grndb.html html/reference/executables/grnslap.html html/reference/executables/groonga-benchmark.html html/reference/executables/groonga-httpd.html html/reference/executables/groonga-server-http.html html/reference/executables/groonga-suggest-create-dataset.html html/reference/executables/groonga-suggest-httpd.html html/reference/executables/groonga-suggest-learner.html html/reference/executables/groonga.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/executables'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/install'
 /usr/bin/install -c -m 644  html/_sources/install/centos.txt html/_sources/install/debian.txt html/_sources/install/fedora.txt html/_sources/install/mac_os_x.txt html/_sources/install/others.txt html/_sources/install/solaris.txt html/_sources/install/ubuntu.txt html/_sources/install/windows.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/install'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/development'
 /usr/bin/install -c -m 644  html/development/travis-ci.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/development'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/suggest'
 /usr/bin/install -c -m 644  html/reference/suggest/completion.html html/reference/suggest/correction.html html/reference/suggest/introduction.html html/reference/suggest/suggestion.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/suggest'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/command'
 /usr/bin/install -c -m 644  html/_sources/reference/command/command_version.txt html/_sources/reference/command/output_format.txt html/_sources/reference/command/pretty_print.txt html/_sources/reference/command/request_id.txt html/_sources/reference/command/request_timeout.txt html/_sources/reference/command/return_code.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/command'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/commands'
 /usr/bin/install -c -m 644  html/reference/commands/range_filter.html html/reference/commands/register.html html/reference/commands/reindex.html html/reference/commands/request_cancel.html html/reference/commands/ruby_eval.html html/reference/commands/ruby_load.html html/reference/commands/schema.html html/reference/commands/select.html html/reference/commands/shutdown.html html/reference/commands/status.html html/reference/commands/suggest.html html/reference/commands/table_copy.html html/reference/commands/table_create.html html/reference/commands/table_list.html html/reference/commands/table_remove.html html/reference/commands/table_rename.html html/reference/commands/table_tokenize.html html/reference/commands/thread_limit.html html/reference/commands/tokenize.html html/reference/commands/tokenizer_list.html html/reference/commands/truncate.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/api'
 /usr/bin/install -c -m 644  html/_sources/reference/api/global_configurations.txt html/_sources/reference/api/grn_cache.txt html/_sources/reference/api/grn_column.txt html/_sources/reference/api/grn_command_version.txt html/_sources/reference/api/grn_content_type.txt html/_sources/reference/api/grn_ctx.txt html/_sources/reference/api/grn_db.txt html/_sources/reference/api/grn_encoding.txt html/_sources/reference/api/grn_expr.txt html/_sources/reference/api/grn_geo.txt html/_sources/reference/api/grn_hook.txt html/_sources/reference/api/grn_ii.txt html/_sources/reference/api/grn_index_cursor.txt html/_sources/reference/api/grn_info.txt html/_sources/reference/api/grn_match_escalation.txt html/_sources/reference/api/grn_obj.txt html/_sources/reference/api/grn_proc.txt html/_sources/reference/api/grn_search.txt html/_sources/reference/api/grn_table.txt html/_sources/reference/api/grn_table_cursor.txt html/_sources/reference/api/grn_thread.txt html/_sources/reference/api/grn_type.txt html/_sources/reference/api/grn_user_data.txt html/_sources/reference/api/overview.txt html/_sources/reference/api/plugin.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/api'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/spec'
 /usr/bin/install -c -m 644  html/spec/gqtp.html html/spec/search.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/spec'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/install'
 /usr/bin/install -c -m 644  html/install/centos.html html/install/debian.html html/install/fedora.html html/install/mac_os_x.html html/install/others.html html/install/solaris.html html/install/ubuntu.html html/install/windows.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/install'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/command'
 /usr/bin/install -c -m 644  html/reference/command/command_version.html html/reference/command/output_format.html html/reference/command/pretty_print.html html/reference/command/request_id.html html/reference/command/request_timeout.html html/reference/command/return_code.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/command'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution/documentation'
 /usr/bin/install -c -m 644  html/_sources/contribution/documentation/c-api.txt html/_sources/contribution/documentation/i18n.txt html/_sources/contribution/documentation/introduction.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution/documentation'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/operations'
 /usr/bin/install -c -m 644  html/_sources/reference/operations/geolocation_search.txt html/_sources/reference/operations/prefix_rk_search.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/operations'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/api'
 /usr/bin/install -c -m 644  html/reference/api/global_configurations.html html/reference/api/grn_cache.html html/reference/api/grn_column.html html/reference/api/grn_command_version.html html/reference/api/grn_content_type.html html/reference/api/grn_ctx.html html/reference/api/grn_db.html html/reference/api/grn_encoding.html html/reference/api/grn_expr.html html/reference/api/grn_geo.html html/reference/api/grn_hook.html html/reference/api/grn_ii.html html/reference/api/grn_index_cursor.html html/reference/api/grn_info.html html/reference/api/grn_match_escalation.html html/reference/api/grn_obj.html html/reference/api/grn_proc.html html/reference/api/grn_search.html html/reference/api/grn_table.html html/reference/api/grn_table_cursor.html html/reference/api/grn_thread.html html/reference/api/grn_type.html html/reference/api/grn_user_data.html html/reference/api/overview.html html/reference/api/plugin.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/api'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/functions'
 /usr/bin/install -c -m 644  html/_sources/reference/functions/between.txt html/_sources/reference/functions/edit_distance.txt html/_sources/reference/functions/fuzzy_search.txt html/_sources/reference/functions/geo_distance.txt html/_sources/reference/functions/geo_in_circle.txt html/_sources/reference/functions/geo_in_rectangle.txt html/_sources/reference/functions/highlight_full.txt html/_sources/reference/functions/highlight_html.txt html/_sources/reference/functions/html_untag.txt html/_sources/reference/functions/in_values.txt html/_sources/reference/functions/now.txt html/_sources/reference/functions/number_classify.txt html/_sources/reference/functions/prefix_rk_search.txt html/_sources/reference/functions/query.txt html/_sources/reference/functions/rand.txt html/_sources/reference/functions/record_number.txt html/_sources/reference/functions/snippet_html.txt html/_sources/reference/functions/string_substring.txt html/_sources/reference/functions/sub_filter.txt html/_sources/reference/functions/time_classify_day.txt html/_sources/reference/functions/time_classify_hour.txt html/_sources/reference/functions/time_classify_minute.txt html/_sources/reference/functions/time_classify_month.txt html/_sources/reference/functions/time_classify_second.txt html/_sources/reference/functions/time_classify_week.txt html/_sources/reference/functions/time_classify_year.txt html/_sources/reference/functions/vector_size.txt html/_sources/reference/functions/vector_slice.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/functions'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/scorers'
 /usr/bin/install -c -m 644  html/_sources/reference/scorers/scorer_tf_at_most.txt html/_sources/reference/scorers/scorer_tf_idf.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/scorers'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution/documentation'
 /usr/bin/install -c -m 644  html/contribution/documentation/c-api.html html/contribution/documentation/i18n.html html/contribution/documentation/introduction.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution/documentation'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/operations'
 /usr/bin/install -c -m 644  html/reference/operations/geolocation_search.html html/reference/operations/prefix_rk_search.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/operations'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/spec'
 /usr/bin/install -c -m 644  html/_sources/spec/gqtp.txt html/_sources/spec/search.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/spec'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/functions'
 /usr/bin/install -c -m 644  html/reference/functions/between.html html/reference/functions/edit_distance.html html/reference/functions/fuzzy_search.html html/reference/functions/geo_distance.html html/reference/functions/geo_in_circle.html html/reference/functions/geo_in_rectangle.html html/reference/functions/highlight_full.html html/reference/functions/highlight_html.html html/reference/functions/html_untag.html html/reference/functions/in_values.html html/reference/functions/now.html html/reference/functions/number_classify.html html/reference/functions/prefix_rk_search.html html/reference/functions/query.html html/reference/functions/rand.html html/reference/functions/record_number.html html/reference/functions/snippet_html.html html/reference/functions/string_substring.html html/reference/functions/sub_filter.html html/reference/functions/time_classify_day.html html/reference/functions/time_classify_hour.html html/reference/functions/time_classify_minute.html html/reference/functions/time_classify_month.html html/reference/functions/time_classify_second.html html/reference/functions/time_classify_week.html html/reference/functions/time_classify_year.html html/reference/functions/vector_size.html html/reference/functions/vector_slice.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/functions'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/scorers'
 /usr/bin/install -c -m 644  html/reference/scorers/scorer_tf_at_most.html html/reference/scorers/scorer_tf_idf.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/scorers'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_static'
 /usr/bin/install -c -m 644  html/_static/ajax-loader.gif html/_static/basic.css html/_static/comment-bright.png html/_static/comment-close.png html/_static/comment.png html/_static/doctools.js html/_static/down-pressed.png html/_static/down.png html/_static/favicon.ico html/_static/file.png html/_static/groonga.css html/_static/header-background.png html/_static/jquery-1.11.1.js html/_static/jquery.js html/_static/logo.png html/_static/minus.png html/_static/navigation-bar.png html/_static/plus.png html/_static/pygments.css html/_static/searchtools.js html/_static/underscore-1.3.1.js html/_static/underscore.js html/_static/up-pressed.png html/_static/up.png html/_static/websupport.js '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_static'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution/development/build'
 /usr/bin/install -c -m 644  html/_sources/contribution/development/build/unix_autotools.txt html/_sources/contribution/development/build/unix_cmake.txt html/_sources/contribution/development/build/windows_cmake.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution/development/build'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/columns'
 /usr/bin/install -c -m 644  html/_sources/reference/columns/index.txt html/_sources/reference/columns/pseudo.txt html/_sources/reference/columns/scalar.txt html/_sources/reference/columns/vector.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/columns'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/server/http'
 /usr/bin/install -c -m 644  html/_sources/server/http/comparison.txt html/_sources/server/http/groonga-httpd.txt html/_sources/server/http/groonga.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/server/http'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution/development/build'
 /usr/bin/install -c -m 644  html/contribution/development/build/unix_autotools.html html/contribution/development/build/unix_cmake.html html/contribution/development/build/windows_cmake.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution/development/build'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/query_expanders'
 /usr/bin/install -c -m 644  html/_sources/reference/query_expanders/tsv.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/reference/query_expanders'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html'
 /usr/bin/install -c -m 644  html/.buildinfo html/characteristic.html html/client.html html/community.html html/contribution.html html/development.html html/genindex.html html/index.html html/install.html html/limitations.html html/news.html html/objects.inv html/reference.html html/search.html html/searchindex.js html/server.html html/spec.html html/troubleshooting.html html/tutorial.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/columns'
 /usr/bin/install -c -m 644  html/reference/columns/index.html html/reference/columns/pseudo.html html/reference/columns/scalar.html html/reference/columns/vector.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/columns'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution/development'
 /usr/bin/install -c -m 644  html/_sources/contribution/development/build.txt html/_sources/contribution/development/com.txt html/_sources/contribution/development/cooperation.txt html/_sources/contribution/development/query.txt html/_sources/contribution/development/release.txt html/_sources/contribution/development/repository.txt html/_sources/contribution/development/test.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution/development'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/server/http'
 /usr/bin/install -c -m 644  html/server/http/comparison.html html/server/http/groonga-httpd.html html/server/http/groonga.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/server/http'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/troubleshooting'
 /usr/bin/install -c -m 644  html/_sources/troubleshooting/different_results_with_the_same_keyword.txt html/_sources/troubleshooting/mmap_cannot_allocate_memory.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/troubleshooting'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/tutorial'
 /usr/bin/install -c -m 644  html/_sources/tutorial/data.txt html/_sources/tutorial/drilldown.txt html/_sources/tutorial/index.txt html/_sources/tutorial/introduction.txt html/_sources/tutorial/lexicon.txt html/_sources/tutorial/match_columns.txt html/_sources/tutorial/micro_blog.txt html/_sources/tutorial/network.txt html/_sources/tutorial/patricia_trie.txt html/_sources/tutorial/query_expansion.txt html/_sources/tutorial/search.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/tutorial'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution'
 /usr/bin/install -c -m 644  html/_sources/contribution/development.txt html/_sources/contribution/documentation.txt html/_sources/contribution/report.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/contribution'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/query_expanders'
 /usr/bin/install -c -m 644  html/reference/query_expanders/tsv.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/query_expanders'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/server'
 /usr/bin/install -c -m 644  html/_sources/server/gqtp.txt html/_sources/server/http.txt html/_sources/server/memcached.txt html/_sources/server/package.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/_sources/server'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution/development'
 /usr/bin/install -c -m 644  html/contribution/development/build.html html/contribution/development/com.html html/contribution/development/cooperation.html html/contribution/development/query.html html/contribution/development/release.html html/contribution/development/repository.html html/contribution/development/test.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/contribution/development'
make[8]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/en'
Making install in ja
make[5]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make  install-recursive
make[6]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja'
Making install in LC_MESSAGES
make[7]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make  install-am
make[8]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[9]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[9]: Nothing to be done for 'install-exec-am'.
make[9]: Nothing to be done for 'install-data-am'.
make[9]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[8]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja/LC_MESSAGES'
make[7]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[8]: Entering directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[8]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/commands'
 /usr/bin/install -c -m 644  html/_sources/reference/commands/cache_limit.txt html/_sources/reference/commands/check.txt html/_sources/reference/commands/clearlock.txt html/_sources/reference/commands/column_copy.txt html/_sources/reference/commands/column_create.txt html/_sources/reference/commands/column_list.txt html/_sources/reference/commands/column_remove.txt html/_sources/reference/commands/column_rename.txt html/_sources/reference/commands/config_delete.txt html/_sources/reference/commands/config_get.txt html/_sources/reference/commands/config_set.txt html/_sources/reference/commands/database_unmap.txt html/_sources/reference/commands/define_selector.txt html/_sources/reference/commands/defrag.txt html/_sources/reference/commands/delete.txt html/_sources/reference/commands/dump.txt html/_sources/reference/commands/io_flush.txt html/_sources/reference/commands/load.txt html/_sources/reference/commands/lock_acquire.txt html/_sources/reference/commands/lock_clear.txt html/_sources/reference/commands/lock_release.txt html/_sources/reference/commands/log_level.txt html/_sources/reference/commands/log_put.txt html/_sources/reference/commands/log_reopen.txt html/_sources/reference/commands/logical_count.txt html/_sources/reference/commands/logical_parameters.txt html/_sources/reference/commands/logical_range_filter.txt html/_sources/reference/commands/logical_select.txt html/_sources/reference/commands/logical_shard_list.txt html/_sources/reference/commands/logical_table_remove.txt html/_sources/reference/commands/normalize.txt html/_sources/reference/commands/normalizer_list.txt html/_sources/reference/commands/object_exist.txt html/_sources/reference/commands/object_inspect.txt html/_sources/reference/commands/object_list.txt html/_sources/reference/commands/object_remove.txt html/_sources/reference/commands/plugin_register.txt html/_sources/reference/commands/plugin_unregister.txt html/_sources/reference/commands/query_expand.txt html/_sources/reference/commands/quit.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/commands'
 /usr/bin/install -c -m 644  html/reference/commands/cache_limit.html html/reference/commands/check.html html/reference/commands/clearlock.html html/reference/commands/column_copy.html html/reference/commands/column_create.html html/reference/commands/column_list.html html/reference/commands/column_remove.html html/reference/commands/column_rename.html html/reference/commands/config_delete.html html/reference/commands/config_get.html html/reference/commands/config_set.html html/reference/commands/database_unmap.html html/reference/commands/define_selector.html html/reference/commands/defrag.html html/reference/commands/delete.html html/reference/commands/dump.html html/reference/commands/io_flush.html html/reference/commands/load.html html/reference/commands/lock_acquire.html html/reference/commands/lock_clear.html html/reference/commands/lock_release.html html/reference/commands/log_level.html html/reference/commands/log_put.html html/reference/commands/log_reopen.html html/reference/commands/logical_count.html html/reference/commands/logical_parameters.html html/reference/commands/logical_range_filter.html html/reference/commands/logical_select.html html/reference/commands/logical_shard_list.html html/reference/commands/logical_table_remove.html html/reference/commands/normalize.html html/reference/commands/normalizer_list.html html/reference/commands/object_exist.html html/reference/commands/object_inspect.html html/reference/commands/object_list.html html/reference/commands/object_remove.html html/reference/commands/plugin_register.html html/reference/commands/plugin_unregister.html html/reference/commands/query_expand.html html/reference/commands/quit.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/news'
 /usr/bin/install -c -m 644  html/news/0.x.html html/news/1.0.x.html html/news/1.1.x.html html/news/1.2.x.html html/news/1.3.x.html html/news/2.x.html html/news/3.x.html html/news/4.x.html html/news/5.x.html html/news/senna.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/news'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference'
 /usr/bin/install -c -m 644  html/_sources/reference/alias.txt html/_sources/reference/api.txt html/_sources/reference/cast.txt html/_sources/reference/column.txt html/_sources/reference/command.txt html/_sources/reference/configuration.txt html/_sources/reference/executables.txt html/_sources/reference/function.txt html/_sources/reference/grn_expr.txt html/_sources/reference/indexing.txt html/_sources/reference/log.txt html/_sources/reference/normalizers.txt html/_sources/reference/operations.txt html/_sources/reference/output.txt html/_sources/reference/query_expanders.txt html/_sources/reference/regular_expression.txt html/_sources/reference/scorer.txt html/_sources/reference/sharding.txt html/_sources/reference/suggest.txt html/_sources/reference/tables.txt html/_sources/reference/token_filters.txt html/_sources/reference/tokenizers.txt html/_sources/reference/tuning.txt html/_sources/reference/types.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/grn_expr'
 /usr/bin/install -c -m 644  html/_sources/reference/grn_expr/query_syntax.txt html/_sources/reference/grn_expr/script_syntax.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/grn_expr'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/executables'
 /usr/bin/install -c -m 644  html/_sources/reference/executables/grndb.txt html/_sources/reference/executables/grnslap.txt html/_sources/reference/executables/groonga-benchmark.txt html/_sources/reference/executables/groonga-httpd.txt html/_sources/reference/executables/groonga-server-http.txt html/_sources/reference/executables/groonga-suggest-create-dataset.txt html/_sources/reference/executables/groonga-suggest-httpd.txt html/_sources/reference/executables/groonga-suggest-learner.txt html/_sources/reference/executables/groonga.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/executables'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/troubleshooting'
 /usr/bin/install -c -m 644  html/troubleshooting/different_results_with_the_same_keyword.html html/troubleshooting/mmap_cannot_allocate_memory.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/troubleshooting'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_images'
 /usr/bin/install -c -m 644  html/_images/geo-points.png html/_images/used-when-indexing.png html/_images/used-when-searching.png '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_images'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/tutorial'
 /usr/bin/install -c -m 644  html/tutorial/data.html html/tutorial/drilldown.html html/tutorial/index.html html/tutorial/introduction.html html/tutorial/lexicon.html html/tutorial/match_columns.html html/tutorial/micro_blog.html html/tutorial/network.html html/tutorial/patricia_trie.html html/tutorial/query_expansion.html html/tutorial/search.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/tutorial'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution'
 /usr/bin/install -c -m 644  html/contribution/development.html html/contribution/documentation.html html/contribution/report.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/server'
 /usr/bin/install -c -m 644  html/server/gqtp.html html/server/http.html html/server/memcached.html html/server/package.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/server'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources'
 /usr/bin/install -c -m 644  html/_sources/characteristic.txt html/_sources/client.txt html/_sources/community.txt html/_sources/contribution.txt html/_sources/development.txt html/_sources/index.txt html/_sources/install.txt html/_sources/limitations.txt html/_sources/news.txt html/_sources/reference.txt html/_sources/server.txt html/_sources/spec.txt html/_sources/troubleshooting.txt html/_sources/tutorial.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/development'
 /usr/bin/install -c -m 644  html/_sources/development/travis-ci.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/development'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/suggest'
 /usr/bin/install -c -m 644  html/_sources/reference/suggest/completion.txt html/_sources/reference/suggest/correction.txt html/_sources/reference/suggest/introduction.txt html/_sources/reference/suggest/suggestion.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/suggest'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/commands'
 /usr/bin/install -c -m 644  html/_sources/reference/commands/range_filter.txt html/_sources/reference/commands/register.txt html/_sources/reference/commands/reindex.txt html/_sources/reference/commands/request_cancel.txt html/_sources/reference/commands/ruby_eval.txt html/_sources/reference/commands/ruby_load.txt html/_sources/reference/commands/schema.txt html/_sources/reference/commands/select.txt html/_sources/reference/commands/shutdown.txt html/_sources/reference/commands/status.txt html/_sources/reference/commands/suggest.txt html/_sources/reference/commands/table_copy.txt html/_sources/reference/commands/table_create.txt html/_sources/reference/commands/table_list.txt html/_sources/reference/commands/table_remove.txt html/_sources/reference/commands/table_rename.txt html/_sources/reference/commands/table_tokenize.txt html/_sources/reference/commands/thread_limit.txt html/_sources/reference/commands/tokenize.txt html/_sources/reference/commands/tokenizer_list.txt html/_sources/reference/commands/truncate.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/news'
 /usr/bin/install -c -m 644  html/_sources/news/0.x.txt html/_sources/news/1.0.x.txt html/_sources/news/1.1.x.txt html/_sources/news/1.2.x.txt html/_sources/news/1.3.x.txt html/_sources/news/2.x.txt html/_sources/news/3.x.txt html/_sources/news/4.x.txt html/_sources/news/5.x.txt html/_sources/news/senna.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/news'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference'
 /usr/bin/install -c -m 644  html/reference/alias.html html/reference/api.html html/reference/cast.html html/reference/column.html html/reference/command.html html/reference/configuration.html html/reference/executables.html html/reference/function.html html/reference/grn_expr.html html/reference/indexing.html html/reference/log.html html/reference/normalizers.html html/reference/operations.html html/reference/output.html html/reference/query_expanders.html html/reference/regular_expression.html html/reference/scorer.html html/reference/sharding.html html/reference/suggest.html html/reference/tables.html html/reference/token_filters.html html/reference/tokenizers.html html/reference/tuning.html html/reference/types.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/grn_expr'
 /usr/bin/install -c -m 644  html/reference/grn_expr/query_syntax.html html/reference/grn_expr/script_syntax.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/grn_expr'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/executables'
 /usr/bin/install -c -m 644  html/reference/executables/grndb.html html/reference/executables/grnslap.html html/reference/executables/groonga-benchmark.html html/reference/executables/groonga-httpd.html html/reference/executables/groonga-server-http.html html/reference/executables/groonga-suggest-create-dataset.html html/reference/executables/groonga-suggest-httpd.html html/reference/executables/groonga-suggest-learner.html html/reference/executables/groonga.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/executables'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/install'
 /usr/bin/install -c -m 644  html/_sources/install/centos.txt html/_sources/install/debian.txt html/_sources/install/fedora.txt html/_sources/install/mac_os_x.txt html/_sources/install/others.txt html/_sources/install/solaris.txt html/_sources/install/ubuntu.txt html/_sources/install/windows.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/install'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/development'
 /usr/bin/install -c -m 644  html/development/travis-ci.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/development'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/suggest'
 /usr/bin/install -c -m 644  html/reference/suggest/completion.html html/reference/suggest/correction.html html/reference/suggest/introduction.html html/reference/suggest/suggestion.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/suggest'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/command'
 /usr/bin/install -c -m 644  html/_sources/reference/command/command_version.txt html/_sources/reference/command/output_format.txt html/_sources/reference/command/pretty_print.txt html/_sources/reference/command/request_id.txt html/_sources/reference/command/request_timeout.txt html/_sources/reference/command/return_code.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/command'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/commands'
 /usr/bin/install -c -m 644  html/reference/commands/range_filter.html html/reference/commands/register.html html/reference/commands/reindex.html html/reference/commands/request_cancel.html html/reference/commands/ruby_eval.html html/reference/commands/ruby_load.html html/reference/commands/schema.html html/reference/commands/select.html html/reference/commands/shutdown.html html/reference/commands/status.html html/reference/commands/suggest.html html/reference/commands/table_copy.html html/reference/commands/table_create.html html/reference/commands/table_list.html html/reference/commands/table_remove.html html/reference/commands/table_rename.html html/reference/commands/table_tokenize.html html/reference/commands/thread_limit.html html/reference/commands/tokenize.html html/reference/commands/tokenizer_list.html html/reference/commands/truncate.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/commands'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/api'
 /usr/bin/install -c -m 644  html/_sources/reference/api/global_configurations.txt html/_sources/reference/api/grn_cache.txt html/_sources/reference/api/grn_column.txt html/_sources/reference/api/grn_command_version.txt html/_sources/reference/api/grn_content_type.txt html/_sources/reference/api/grn_ctx.txt html/_sources/reference/api/grn_db.txt html/_sources/reference/api/grn_encoding.txt html/_sources/reference/api/grn_expr.txt html/_sources/reference/api/grn_geo.txt html/_sources/reference/api/grn_hook.txt html/_sources/reference/api/grn_ii.txt html/_sources/reference/api/grn_index_cursor.txt html/_sources/reference/api/grn_info.txt html/_sources/reference/api/grn_match_escalation.txt html/_sources/reference/api/grn_obj.txt html/_sources/reference/api/grn_proc.txt html/_sources/reference/api/grn_search.txt html/_sources/reference/api/grn_table.txt html/_sources/reference/api/grn_table_cursor.txt html/_sources/reference/api/grn_thread.txt html/_sources/reference/api/grn_type.txt html/_sources/reference/api/grn_user_data.txt html/_sources/reference/api/overview.txt html/_sources/reference/api/plugin.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/api'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/spec'
 /usr/bin/install -c -m 644  html/spec/gqtp.html html/spec/search.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/spec'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/install'
 /usr/bin/install -c -m 644  html/install/centos.html html/install/debian.html html/install/fedora.html html/install/mac_os_x.html html/install/others.html html/install/solaris.html html/install/ubuntu.html html/install/windows.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/install'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/command'
 /usr/bin/install -c -m 644  html/reference/command/command_version.html html/reference/command/output_format.html html/reference/command/pretty_print.html html/reference/command/request_id.html html/reference/command/request_timeout.html html/reference/command/return_code.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/command'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution/documentation'
 /usr/bin/install -c -m 644  html/_sources/contribution/documentation/c-api.txt html/_sources/contribution/documentation/i18n.txt html/_sources/contribution/documentation/introduction.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution/documentation'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/operations'
 /usr/bin/install -c -m 644  html/_sources/reference/operations/geolocation_search.txt html/_sources/reference/operations/prefix_rk_search.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/operations'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/api'
 /usr/bin/install -c -m 644  html/reference/api/global_configurations.html html/reference/api/grn_cache.html html/reference/api/grn_column.html html/reference/api/grn_command_version.html html/reference/api/grn_content_type.html html/reference/api/grn_ctx.html html/reference/api/grn_db.html html/reference/api/grn_encoding.html html/reference/api/grn_expr.html html/reference/api/grn_geo.html html/reference/api/grn_hook.html html/reference/api/grn_ii.html html/reference/api/grn_index_cursor.html html/reference/api/grn_info.html html/reference/api/grn_match_escalation.html html/reference/api/grn_obj.html html/reference/api/grn_proc.html html/reference/api/grn_search.html html/reference/api/grn_table.html html/reference/api/grn_table_cursor.html html/reference/api/grn_thread.html html/reference/api/grn_type.html html/reference/api/grn_user_data.html html/reference/api/overview.html html/reference/api/plugin.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/api'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/functions'
 /usr/bin/install -c -m 644  html/_sources/reference/functions/between.txt html/_sources/reference/functions/edit_distance.txt html/_sources/reference/functions/fuzzy_search.txt html/_sources/reference/functions/geo_distance.txt html/_sources/reference/functions/geo_in_circle.txt html/_sources/reference/functions/geo_in_rectangle.txt html/_sources/reference/functions/highlight_full.txt html/_sources/reference/functions/highlight_html.txt html/_sources/reference/functions/html_untag.txt html/_sources/reference/functions/in_values.txt html/_sources/reference/functions/now.txt html/_sources/reference/functions/number_classify.txt html/_sources/reference/functions/prefix_rk_search.txt html/_sources/reference/functions/query.txt html/_sources/reference/functions/rand.txt html/_sources/reference/functions/record_number.txt html/_sources/reference/functions/snippet_html.txt html/_sources/reference/functions/string_substring.txt html/_sources/reference/functions/sub_filter.txt html/_sources/reference/functions/time_classify_day.txt html/_sources/reference/functions/time_classify_hour.txt html/_sources/reference/functions/time_classify_minute.txt html/_sources/reference/functions/time_classify_month.txt html/_sources/reference/functions/time_classify_second.txt html/_sources/reference/functions/time_classify_week.txt html/_sources/reference/functions/time_classify_year.txt html/_sources/reference/functions/vector_size.txt html/_sources/reference/functions/vector_slice.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/functions'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/scorers'
 /usr/bin/install -c -m 644  html/_sources/reference/scorers/scorer_tf_at_most.txt html/_sources/reference/scorers/scorer_tf_idf.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/scorers'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution/documentation'
 /usr/bin/install -c -m 644  html/contribution/documentation/c-api.html html/contribution/documentation/i18n.html html/contribution/documentation/introduction.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution/documentation'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/operations'
 /usr/bin/install -c -m 644  html/reference/operations/geolocation_search.html html/reference/operations/prefix_rk_search.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/operations'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/spec'
 /usr/bin/install -c -m 644  html/_sources/spec/gqtp.txt html/_sources/spec/search.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/spec'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/functions'
 /usr/bin/install -c -m 644  html/reference/functions/between.html html/reference/functions/edit_distance.html html/reference/functions/fuzzy_search.html html/reference/functions/geo_distance.html html/reference/functions/geo_in_circle.html html/reference/functions/geo_in_rectangle.html html/reference/functions/highlight_full.html html/reference/functions/highlight_html.html html/reference/functions/html_untag.html html/reference/functions/in_values.html html/reference/functions/now.html html/reference/functions/number_classify.html html/reference/functions/prefix_rk_search.html html/reference/functions/query.html html/reference/functions/rand.html html/reference/functions/record_number.html html/reference/functions/snippet_html.html html/reference/functions/string_substring.html html/reference/functions/sub_filter.html html/reference/functions/time_classify_day.html html/reference/functions/time_classify_hour.html html/reference/functions/time_classify_minute.html html/reference/functions/time_classify_month.html html/reference/functions/time_classify_second.html html/reference/functions/time_classify_week.html html/reference/functions/time_classify_year.html html/reference/functions/vector_size.html html/reference/functions/vector_slice.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/functions'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/scorers'
 /usr/bin/install -c -m 644  html/reference/scorers/scorer_tf_at_most.html html/reference/scorers/scorer_tf_idf.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/scorers'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_static'
 /usr/bin/install -c -m 644  html/_static/ajax-loader.gif html/_static/basic.css html/_static/comment-bright.png html/_static/comment-close.png html/_static/comment.png html/_static/doctools.js html/_static/down-pressed.png html/_static/down.png html/_static/favicon.ico html/_static/file.png html/_static/groonga.css html/_static/header-background.png html/_static/jquery-1.11.1.js html/_static/jquery.js html/_static/logo.png html/_static/minus.png html/_static/navigation-bar.png html/_static/plus.png html/_static/pygments.css html/_static/searchtools.js html/_static/underscore-1.3.1.js html/_static/underscore.js html/_static/up-pressed.png html/_static/up.png html/_static/websupport.js '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_static'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution/development/build'
 /usr/bin/install -c -m 644  html/_sources/contribution/development/build/unix_autotools.txt html/_sources/contribution/development/build/unix_cmake.txt html/_sources/contribution/development/build/windows_cmake.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution/development/build'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/columns'
 /usr/bin/install -c -m 644  html/_sources/reference/columns/index.txt html/_sources/reference/columns/pseudo.txt html/_sources/reference/columns/scalar.txt html/_sources/reference/columns/vector.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/columns'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/server/http'
 /usr/bin/install -c -m 644  html/_sources/server/http/comparison.txt html/_sources/server/http/groonga-httpd.txt html/_sources/server/http/groonga.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/server/http'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution/development/build'
 /usr/bin/install -c -m 644  html/contribution/development/build/unix_autotools.html html/contribution/development/build/unix_cmake.html html/contribution/development/build/windows_cmake.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution/development/build'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/query_expanders'
 /usr/bin/install -c -m 644  html/_sources/reference/query_expanders/tsv.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/reference/query_expanders'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html'
 /usr/bin/install -c -m 644  html/.buildinfo html/characteristic.html html/client.html html/community.html html/contribution.html html/development.html html/genindex.html html/index.html html/install.html html/limitations.html html/news.html html/objects.inv html/reference.html html/search.html html/searchindex.js html/server.html html/spec.html html/troubleshooting.html html/tutorial.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/columns'
 /usr/bin/install -c -m 644  html/reference/columns/index.html html/reference/columns/pseudo.html html/reference/columns/scalar.html html/reference/columns/vector.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/columns'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution/development'
 /usr/bin/install -c -m 644  html/_sources/contribution/development/build.txt html/_sources/contribution/development/com.txt html/_sources/contribution/development/cooperation.txt html/_sources/contribution/development/query.txt html/_sources/contribution/development/release.txt html/_sources/contribution/development/repository.txt html/_sources/contribution/development/test.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution/development'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/server/http'
 /usr/bin/install -c -m 644  html/server/http/comparison.html html/server/http/groonga-httpd.html html/server/http/groonga.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/server/http'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/troubleshooting'
 /usr/bin/install -c -m 644  html/_sources/troubleshooting/different_results_with_the_same_keyword.txt html/_sources/troubleshooting/mmap_cannot_allocate_memory.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/troubleshooting'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/tutorial'
 /usr/bin/install -c -m 644  html/_sources/tutorial/data.txt html/_sources/tutorial/drilldown.txt html/_sources/tutorial/index.txt html/_sources/tutorial/introduction.txt html/_sources/tutorial/lexicon.txt html/_sources/tutorial/match_columns.txt html/_sources/tutorial/micro_blog.txt html/_sources/tutorial/network.txt html/_sources/tutorial/patricia_trie.txt html/_sources/tutorial/query_expansion.txt html/_sources/tutorial/search.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/tutorial'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution'
 /usr/bin/install -c -m 644  html/_sources/contribution/development.txt html/_sources/contribution/documentation.txt html/_sources/contribution/report.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/contribution'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/query_expanders'
 /usr/bin/install -c -m 644  html/reference/query_expanders/tsv.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/query_expanders'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/server'
 /usr/bin/install -c -m 644  html/_sources/server/gqtp.txt html/_sources/server/http.txt html/_sources/server/memcached.txt html/_sources/server/package.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/_sources/server'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution/development'
 /usr/bin/install -c -m 644  html/contribution/development/build.html html/contribution/development/com.html html/contribution/development/cooperation.html html/contribution/development/query.html html/contribution/development/release.html html/contribution/development/repository.html html/contribution/development/test.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/contribution/development'
make[8]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[7]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[6]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale/ja'
make[5]: Entering directory '/<<PKGBUILDDIR>>/doc/locale'
make[6]: Entering directory '/<<PKGBUILDDIR>>/doc/locale'
make[6]: Nothing to be done for 'install-exec-am'.
make[6]: Nothing to be done for 'install-data-am'.
make[6]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/doc/locale'
make[4]: Entering directory '/<<PKGBUILDDIR>>/doc'
make[5]: Entering directory '/<<PKGBUILDDIR>>/doc'
make[5]: Nothing to be done for 'install-exec-am'.
make[5]: Nothing to be done for 'install-data-am'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/doc'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/doc'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/doc'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/doc'
make[2]: Entering directory '/<<PKGBUILDDIR>>'
make[3]: Entering directory '/<<PKGBUILDDIR>>'
make[3]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/pkgconfig'
 /usr/bin/install -c -m 644 groonga.pc '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/pkgconfig'
make[3]: Leaving directory '/<<PKGBUILDDIR>>'
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   debian/rules override_dh_install
make[1]: Entering directory '/<<PKGBUILDDIR>>'
find /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/ -name *.la -delete
find /<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/ -name 'underscore*.js' -delete
find /<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/ -name 'jquery*.js' -delete
install -d debian/tmp/etc/munin/plugin-conf.d/
install -m 0644 debian/groonga-munin-plugins.conf \
  debian/tmp/etc/munin/plugin-conf.d/groonga
mv debian/tmp/usr/share/doc/groonga/ \
  debian/tmp/usr/share/doc/groonga-doc/
dh_install
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   dh_installdocs -a
   dh_installchangelogs -a
   dh_systemd_enable -a
   dh_installinit -a
   dh_systemd_start -a
   dh_installlogrotate -a
   dh_lintian -a
   dh_perl -a
   dh_link -a
   dh_strip_nondeterminism -a
   dh_compress -a
   dh_fixperms -a
   dh_strip -a
   dh_makeshlibs -a
   dh_shlibdeps -a
dpkg-shlibdeps: warning: symbol __aeabi_atexit@CXXABI_ARM_1.3.3 used by debian/libgroonga0/usr/lib/arm-linux-gnueabihf/libgroonga.so.0.0.0 found in none of the libraries
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libgroonga0/usr/lib/arm-linux-gnueabihf/libgroonga.so.0.0.0 was not linked against libatomic.so.1 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/libgroonga0/usr/lib/arm-linux-gnueabihf/libgroonga.so.0.0.0 was not linked against libmsgpackc.so.2 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-plugin-suggest/usr/bin/groonga-suggest-httpd debian/groonga-plugin-suggest/usr/bin/groonga-suggest-create-dataset debian/groonga-plugin-suggest/usr/bin/groonga-suggest-learner were not linked against libstdc++.so.6 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-plugin-suggest/usr/bin/groonga-suggest-httpd debian/groonga-plugin-suggest/usr/bin/groonga-suggest-create-dataset debian/groonga-plugin-suggest/usr/bin/groonga-suggest-learner were not linked against libdl.so.2 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-plugin-suggest/usr/bin/groonga-suggest-httpd debian/groonga-plugin-suggest/usr/bin/groonga-suggest-create-dataset debian/groonga-plugin-suggest/usr/bin/groonga-suggest-learner were not linked against libz.so.1 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-bin/usr/bin/grndb debian/groonga-bin/usr/bin/groonga debian/groonga-bin/usr/bin/groonga-benchmark 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/grndb debian/groonga-bin/usr/bin/groonga debian/groonga-bin/usr/bin/groonga-benchmark 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/grndb debian/groonga-bin/usr/bin/groonga debian/groonga-bin/usr/bin/groonga-benchmark 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/grndb debian/groonga-bin/usr/bin/groonga debian/groonga-bin/usr/bin/groonga-benchmark 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/grndb debian/groonga-bin/usr/bin/groonga debian/groonga-bin/usr/bin/groonga-benchmark 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 ld-linux-armhf.so.3 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-httpd/usr/sbin/groonga-httpd was not linked against libm.so.6 (it uses none of the library's symbols)
   dh_installdeb -a
   dh_gencontrol -a
dpkg-gencontrol: warning: Depends field of package groonga: unknown substitution variable ${shlibs:Depends}
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: Depends field of package libgroonga-dev: unknown substitution variable ${shlibs:Depends}
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
   dh_md5sums -a
   dh_builddeb -a
dpkg-deb: building package 'libgroonga0-dbgsym' in '../libgroonga0-dbgsym_6.1.5-1_armhf.deb'.
dpkg-deb: building package 'groonga-tokenizer-mecab-dbgsym' in '../groonga-tokenizer-mecab-dbgsym_6.1.5-1_armhf.deb'.
dpkg-deb: building package 'libgroonga-dev' in '../libgroonga-dev_6.1.5-1_armhf.deb'.
dpkg-deb: building package 'groonga' in '../groonga_6.1.5-1_armhf.deb'.
dpkg-deb: building package 'groonga-tokenizer-mecab' in '../groonga-tokenizer-mecab_6.1.5-1_armhf.deb'.
dpkg-deb: building package 'groonga-token-filter-stem-dbgsym' in '../groonga-token-filter-stem-dbgsym_6.1.5-1_armhf.deb'.
dpkg-deb: building package 'groonga-plugin-suggest-dbgsym' in '../groonga-plugin-suggest-dbgsym_6.1.5-1_armhf.deb'.
dpkg-deb: building package 'groonga-token-filter-stem' in '../groonga-token-filter-stem_6.1.5-1_armhf.deb'.
dpkg-deb: building package 'groonga-bin-dbgsym' in '../groonga-bin-dbgsym_6.1.5-1_armhf.deb'.
dpkg-deb: building package 'groonga-httpd-dbgsym' in '../groonga-httpd-dbgsym_6.1.5-1_armhf.deb'.
dpkg-deb: building package 'groonga-plugin-suggest' in '../groonga-plugin-suggest_6.1.5-1_armhf.deb'.
dpkg-deb: building package 'groonga-bin' in '../groonga-bin_6.1.5-1_armhf.deb'.
dpkg-deb: building package 'groonga-httpd' in '../groonga-httpd_6.1.5-1_armhf.deb'.
dpkg-deb: building package 'libgroonga0' in '../libgroonga0_6.1.5-1_armhf.deb'.
 dpkg-genbuildinfo --build=any
dpkg-genbuildinfo: warning: File::FcntlLock not available; using flock which is not NFS-safe
 dpkg-genchanges --build=any -mRaspbian wandboard test autobuilder <root@raspbian.org> >../groonga_6.1.5-1_armhf.changes
dpkg-genchanges: info: binary-only arch-specific upload (source code and arch-indep packages not included)
 dpkg-source --after-build groonga-6.1.5
dpkg-buildpackage: info: binary-only upload (no source included)
--------------------------------------------------------------------------------
Build finished at 2017-02-03T22:13:58Z

Finished
--------

I: Built successfully

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


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


groonga_6.1.5-1_armhf.changes:
------------------------------

Format: 1.8
Date: Mon, 23 Jan 2017 19:14:09 +0900
Source: groonga
Binary: groonga groonga-server-common groonga-server-gqtp libgroonga-dev libgroonga0 groonga-tokenizer-mecab groonga-token-filter-stem groonga-plugin-suggest groonga-bin groonga-httpd groonga-doc groonga-examples groonga-munin-plugins
Architecture: armhf
Version: 6.1.5-1
Distribution: stretch-staging
Urgency: medium
Maintainer: Raspbian wandboard test autobuilder <root@raspbian.org>
Changed-By: Kentaro Hayashi <hayashi@clear-code.com>
Description:
 groonga    - Fulltext search engine (metapackage for library use)
 groonga-bin - Commands for Groonga
 groonga-doc - Documentation of Groonga
 groonga-examples - Examples of Groonga
 groonga-httpd - Groonga HTTP server
 groonga-munin-plugins - munin-node plugins for Groonga
 groonga-plugin-suggest - Suggest plugin for Groonga
 groonga-server-common - Fulltext search engine (metapackage for server use)
 groonga-server-gqtp - Fulltext search engine (metapackage for GQTP server use)
 groonga-token-filter-stem - Stemming token filter for Groonga
 groonga-tokenizer-mecab - MeCab tokenizer for Groonga
 libgroonga-dev - Development files to use Groonga as a library
 libgroonga0 - Library files for Groonga
Changes:
 groonga (6.1.5-1) unstable; urgency=medium
 .
   * New upstream release.
   * debian/patches/fix-a-bug-that-AND-optimization-may-skip-matched-rec.patch
     debian/patches/really-fix-a-bug-that-AND-optimization-may-skip-matc.patch
     - Drop needless patch files. These changes are already merged in
       Groonga 6.1.5.
Checksums-Sha1:
 27531f3d869348b4ea6c93545b44f8209a0c7b4a 141432 groonga-bin-dbgsym_6.1.5-1_armhf.deb
 76835fc109cd8c2bb0fe8b2201d2e3733331459d 253602 groonga-bin_6.1.5-1_armhf.deb
 88e3b9c6cd0f4cd492aea67895c5e8871e66d422 2057928 groonga-httpd-dbgsym_6.1.5-1_armhf.deb
 ac4247511da6e2a193d93c0b50e442ffa1a2f4e5 315132 groonga-httpd_6.1.5-1_armhf.deb
 8017eb09521eaf50581ec04c228c5c50a019f82c 123152 groonga-plugin-suggest-dbgsym_6.1.5-1_armhf.deb
 5c2e7c8f57dd94695e5b07ad02cde7cc4d64713d 37106 groonga-plugin-suggest_6.1.5-1_armhf.deb
 45782f6f6d44dc23f190d58012aab215921edd96 9908 groonga-token-filter-stem-dbgsym_6.1.5-1_armhf.deb
 a937678d70c01f5f0947c972cefde59126662a25 11716 groonga-token-filter-stem_6.1.5-1_armhf.deb
 692e5bbbdeb1cf9c59c69daaaaae9d0f1911247e 13824 groonga-tokenizer-mecab-dbgsym_6.1.5-1_armhf.deb
 a35315e2b6a976471cf20b45339b72828e4f6ceb 13294 groonga-tokenizer-mecab_6.1.5-1_armhf.deb
 671694c4702d6824b2a4776827599a0dae438f0b 8855 groonga_6.1.5-1_armhf.buildinfo
 67d6ed32dd1484e622ce7943aa80716ea7a575f9 8542 groonga_6.1.5-1_armhf.deb
 1f840377c12f319700597d293c73f4f60a0060de 32404 libgroonga-dev_6.1.5-1_armhf.deb
 46d6db777b7e563b26d5294a45fefc471c927c8f 3773988 libgroonga0-dbgsym_6.1.5-1_armhf.deb
 efab9a748262f814bae344e841b7deb25df548b5 1277752 libgroonga0_6.1.5-1_armhf.deb
Checksums-Sha256:
 226a37e81030930a86f87378e39b839e122645941998182b55e2b074f1fcd3be 141432 groonga-bin-dbgsym_6.1.5-1_armhf.deb
 ca88a8c13e87364e33b25f108ed183043f6ddd43982c3aaf50be0ea48c9f55cd 253602 groonga-bin_6.1.5-1_armhf.deb
 bb8bcb8c2e8ed36943fded8be8f7caeb43f94e63b49203680eaadfb6985695b2 2057928 groonga-httpd-dbgsym_6.1.5-1_armhf.deb
 672f552a6ea5cc07e41a89a9389a86eecb1f13418b35a7b0084490ac2974f735 315132 groonga-httpd_6.1.5-1_armhf.deb
 13293319777023edd63043de80ca47e80fcfcfb7483a0d1abf8bf4c904f17bfa 123152 groonga-plugin-suggest-dbgsym_6.1.5-1_armhf.deb
 81150fce33e49152369e3674d043892040994c4729e9b0fa50bfd6b712ba44e4 37106 groonga-plugin-suggest_6.1.5-1_armhf.deb
 28b11f748b288c7bd70040ef2bea7100c7a3010af2dce31954237e4e384cb22a 9908 groonga-token-filter-stem-dbgsym_6.1.5-1_armhf.deb
 f7c260ad7dcb6254239c0fa78e7f89ab048f8ac3b3aa9bb23d966790a8a8a966 11716 groonga-token-filter-stem_6.1.5-1_armhf.deb
 40abaa4b12a0c471a09906b52b1a76542967388944b514252725d29ebc373cfe 13824 groonga-tokenizer-mecab-dbgsym_6.1.5-1_armhf.deb
 a1e15187ef38d0e9e7484aa4807660aa03a5cd231fa93f342adb7649e56944a1 13294 groonga-tokenizer-mecab_6.1.5-1_armhf.deb
 3af352a5c7e0fef6f55450b310e738c8cf653880dc98164a7c3ea448976f4659 8855 groonga_6.1.5-1_armhf.buildinfo
 f79824f8a5b80692c54ea198ee200c91e6bb85539394160f383bbc6268d4930c 8542 groonga_6.1.5-1_armhf.deb
 8200743c084684b75000f49a8f71c6109a0ef153bb818275e3a3f0a3ef1ef1a9 32404 libgroonga-dev_6.1.5-1_armhf.deb
 62e636bb5fa2657e4a8c7049177080241ee4b1b695bdc68d3184a5a644606a62 3773988 libgroonga0-dbgsym_6.1.5-1_armhf.deb
 d35365e8b704ad63b7ab6de780a5b77398c197bf54ce80206f9ce33727628e23 1277752 libgroonga0_6.1.5-1_armhf.deb
Files:
 5e6f4b88780cc5ea8bfa73f9cd337617 141432 debug extra groonga-bin-dbgsym_6.1.5-1_armhf.deb
 2922d0a42e9d9df0ef2a056755e541f8 253602 database optional groonga-bin_6.1.5-1_armhf.deb
 0f37e96770f88091b91147c077c08d2a 2057928 debug extra groonga-httpd-dbgsym_6.1.5-1_armhf.deb
 94cfe370160ee1d66bf52caf387e0454 315132 database optional groonga-httpd_6.1.5-1_armhf.deb
 5938e88c69f707b50d332285bcee6d31 123152 debug extra groonga-plugin-suggest-dbgsym_6.1.5-1_armhf.deb
 24157d931b605493a45f5f6ccefd26c3 37106 libs optional groonga-plugin-suggest_6.1.5-1_armhf.deb
 27ee080cc3ba6d655f0d669af5eadec4 9908 debug extra groonga-token-filter-stem-dbgsym_6.1.5-1_armhf.deb
 71bafbcdc3e920f9e9c43177e50d6556 11716 libs optional groonga-token-filter-stem_6.1.5-1_armhf.deb
 c94ac548437a8b1411fe52dcc16b8420 13824 debug extra groonga-tokenizer-mecab-dbgsym_6.1.5-1_armhf.deb
 de3d9c1f4b7799d038dee02bcc85d927 13294 libs optional groonga-tokenizer-mecab_6.1.5-1_armhf.deb
 c5b905cae241d46e24f9f0b1bedb834d 8855 database optional groonga_6.1.5-1_armhf.buildinfo
 cc65bbd7d51c207ec4e4b0e46fbc29cb 8542 database optional groonga_6.1.5-1_armhf.deb
 b3e0738b2d4c8896ccc58eee9301b266 32404 libdevel optional libgroonga-dev_6.1.5-1_armhf.deb
 ff306fa085ab43cf2189236b8b784466 3773988 debug extra libgroonga0-dbgsym_6.1.5-1_armhf.deb
 b53c1bcba7171d6e6e6af59ba4856f4f 1277752 libs optional libgroonga0_6.1.5-1_armhf.deb

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


groonga-bin-dbgsym_6.1.5-1_armhf.deb
------------------------------------

 new debian package, version 2.0.
 size 141432 bytes: control archive=567 bytes.
     457 bytes,    13 lines      control              
     318 bytes,     3 lines      md5sums              
 Package: groonga-bin-dbgsym
 Source: groonga
 Version: 6.1.5-1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 176
 Depends: groonga-bin (= 6.1.5-1)
 Section: debug
 Priority: extra
 Homepage: http://groonga.org/
 Description: Debug symbols for groonga-bin
 Auto-Built-Package: debug-symbols
 Build-Ids: 1f597c891807c941e9d1627d7b192bad1219fc31 425775108eac45653965aff9f013614e80396037 ca3c1e8121a3684aff49085a11b8c4e0b6350f73

drwxr-xr-x root/root         0 2017-01-23 10:14 ./
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/1f/
-rw-r--r-- root/root     87724 2017-01-23 10:14 ./usr/lib/debug/.build-id/1f/597c891807c941e9d1627d7b192bad1219fc31.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/42/
-rw-r--r-- root/root     19520 2017-01-23 10:14 ./usr/lib/debug/.build-id/42/5775108eac45653965aff9f013614e80396037.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/ca/
-rw-r--r-- root/root     59320 2017-01-23 10:14 ./usr/lib/debug/.build-id/ca/3c1e8121a3684aff49085a11b8c4e0b6350f73.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/
lrwxrwxrwx root/root         0 2017-01-23 10:14 ./usr/share/doc/groonga-bin-dbgsym -> groonga-bin


groonga-bin_6.1.5-1_armhf.deb
-----------------------------

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

drwxr-xr-x root/root         0 2017-01-23 10:14 ./
drwxr-xr-x root/root         0 2017-01-23 10:14 ./etc/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./etc/groonga/
-rw-r--r-- root/root       303 2017-01-23 10:14 ./etc/groonga/groonga.conf
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/bin/
-rwxr-xr-x root/root      9676 2017-01-23 10:14 ./usr/bin/grndb
-rwxr-xr-x root/root     71788 2017-01-23 10:14 ./usr/bin/groonga
-rwxr-xr-x root/root     42752 2017-01-23 10:14 ./usr/bin/groonga-benchmark
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/groonga-bin/
-rw-r--r-- root/root      3489 2017-01-23 10:14 ./usr/share/doc/groonga-bin/changelog.Debian.gz
-rw-r--r-- root/root     14825 2017-01-19 08:11 ./usr/share/doc/groonga-bin/copyright
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/groonga/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/groonga/html/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/groonga/html/admin/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/
-rw-r--r-- root/root      1523 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/groonga-admin.css
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/
-rw-r--r-- root/root       180 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png
-rw-r--r-- root/root       182 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_flat_55_fbec88_40x100.png
-rw-r--r-- root/root       124 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png
-rw-r--r-- root/root       123 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_glass_85_dfeffc_1x400.png
-rw-r--r-- root/root       119 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_glass_95_fef1ec_1x400.png
-rw-r--r-- root/root      4033 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png
-rw-r--r-- root/root       104 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png
-rw-r--r-- root/root        88 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png
-rw-r--r-- root/root      4369 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_217bc0_256x240.png
-rw-r--r-- root/root      4369 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_2e83ff_256x240.png
-rw-r--r-- root/root      4369 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_469bdd_256x240.png
-rw-r--r-- root/root      5355 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_6da8d5_256x240.png
-rw-r--r-- root/root      4369 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_cd0a0a_256x240.png
-rw-r--r-- root/root      4369 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_d8e7f3_256x240.png
-rw-r--r-- root/root      5355 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_f9bd01_256x240.png
-rw-r--r-- root/root     33359 2017-01-23 10:14 ./usr/share/groonga/html/admin/css/redmond/jquery-ui-1.8.18.custom.css
-rw-r--r-- root/root      1406 2017-01-23 10:14 ./usr/share/groonga/html/admin/favicon.ico
-rw-r--r-- root/root       682 2017-01-23 10:14 ./usr/share/groonga/html/admin/favicon.png
-rw-r--r-- root/root      4273 2017-01-23 10:14 ./usr/share/groonga/html/admin/favicon.svg
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/groonga/html/admin/images/
-rw-r--r-- root/root      6064 2017-01-23 10:14 ./usr/share/groonga/html/admin/images/groonga.png
-rw-r--r-- root/root      9996 2017-01-23 10:14 ./usr/share/groonga/html/admin/images/groonga.svg
-rw-r--r-- root/root       673 2017-01-23 10:14 ./usr/share/groonga/html/admin/images/loading.gif
-rw-r--r-- root/root     13032 2017-01-23 10:14 ./usr/share/groonga/html/admin/index.html
-rw-r--r-- root/root     13432 2017-01-23 10:14 ./usr/share/groonga/html/admin/index.ja.html
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/groonga/html/admin/js/
-rw-r--r-- root/root     43103 2017-01-23 10:14 ./usr/share/groonga/html/admin/js/groonga-admin.ja.js
-rw-r--r-- root/root     42828 2017-01-23 10:14 ./usr/share/groonga/html/admin/js/groonga-admin.js
-rw-r--r-- root/root    252881 2017-01-23 10:14 ./usr/share/groonga/html/admin/js/jquery-1.7.2.js
-rw-r--r-- root/root    377848 2017-01-23 10:14 ./usr/share/groonga/html/admin/js/jquery-ui-1.8.18.custom.js
-rw-r--r-- root/root    125201 2017-01-23 10:14 ./usr/share/groonga/html/admin/js/jquery.flot-0.8.3.js
-rw-r--r-- root/root      1069 2017-01-23 10:14 ./usr/share/groonga/html/admin/js/jquery.flot.license.txt
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/lintian/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       164 2016-12-10 06:18 ./usr/share/lintian/overrides/groonga-bin


groonga-httpd-dbgsym_6.1.5-1_armhf.deb
--------------------------------------

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

drwxr-xr-x root/root         0 2017-01-23 10:14 ./
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/d5/
-rw-r--r-- root/root   2270344 2017-01-23 10:14 ./usr/lib/debug/.build-id/d5/72e5ec17aff346f39c54c03bb50422d6d7f941.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/
lrwxrwxrwx root/root         0 2017-01-23 10:14 ./usr/share/doc/groonga-httpd-dbgsym -> groonga-httpd


groonga-httpd_6.1.5-1_armhf.deb
-------------------------------

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

drwxr-xr-x root/root         0 2017-01-23 10:14 ./
drwxr-xr-x root/root         0 2017-01-23 10:14 ./etc/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./etc/default/
-rw-r--r-- root/root       738 2016-12-10 06:18 ./etc/default/groonga-httpd
drwxr-xr-x root/root         0 2017-01-23 10:14 ./etc/groonga/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./etc/groonga/httpd/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./etc/groonga/httpd/client_body_temp/
-rw-r--r-- root/root      1077 2017-01-23 10:14 ./etc/groonga/httpd/fastcgi.conf
-rw-r--r-- root/root      1077 2017-01-23 10:14 ./etc/groonga/httpd/fastcgi.conf.default
-rw-r--r-- root/root      1007 2017-01-23 10:14 ./etc/groonga/httpd/fastcgi_params
-rw-r--r-- root/root      1007 2017-01-23 10:14 ./etc/groonga/httpd/fastcgi_params.default
drwxr-xr-x root/root         0 2017-01-23 10:14 ./etc/groonga/httpd/fastcgi_temp/
-rw-r--r-- root/root      1864 2017-01-23 10:14 ./etc/groonga/httpd/groonga-httpd.conf
drwxr-xr-x root/root         0 2017-01-23 10:14 ./etc/groonga/httpd/html/
-rw-r--r-- root/root       537 2017-01-23 10:14 ./etc/groonga/httpd/html/50x.html
-rw-r--r-- root/root       612 2017-01-23 10:14 ./etc/groonga/httpd/html/index.html
-rw-r--r-- root/root      2837 2017-01-23 10:14 ./etc/groonga/httpd/koi-utf
-rw-r--r-- root/root      2223 2017-01-23 10:14 ./etc/groonga/httpd/koi-win
drwxr-xr-x root/root         0 2017-01-23 10:14 ./etc/groonga/httpd/logs/
-rw-r--r-- root/root      3957 2017-01-23 10:14 ./etc/groonga/httpd/mime.types
-rw-r--r-- root/root      3957 2017-01-23 10:14 ./etc/groonga/httpd/mime.types.default
-rw-r--r-- root/root      2656 2017-01-23 10:14 ./etc/groonga/httpd/nginx.conf.default
drwxr-xr-x root/root         0 2017-01-23 10:14 ./etc/groonga/httpd/proxy_temp/
-rw-r--r-- root/root       636 2017-01-23 10:14 ./etc/groonga/httpd/scgi_params
-rw-r--r-- root/root       636 2017-01-23 10:14 ./etc/groonga/httpd/scgi_params.default
drwxr-xr-x root/root         0 2017-01-23 10:14 ./etc/groonga/httpd/scgi_temp/
-rw-r--r-- root/root       664 2017-01-23 10:14 ./etc/groonga/httpd/uwsgi_params
-rw-r--r-- root/root       664 2017-01-23 10:14 ./etc/groonga/httpd/uwsgi_params.default
drwxr-xr-x root/root         0 2017-01-23 10:14 ./etc/groonga/httpd/uwsgi_temp/
-rw-r--r-- root/root      3610 2017-01-23 10:14 ./etc/groonga/httpd/win-utf
drwxr-xr-x root/root         0 2017-01-23 10:14 ./etc/init.d/
-rwxr-xr-x root/root      4526 2016-12-10 06:18 ./etc/init.d/groonga-httpd
drwxr-xr-x root/root         0 2017-01-23 10:14 ./etc/logrotate.d/
-rw-r--r-- root/root       394 2016-12-10 06:18 ./etc/logrotate.d/groonga-httpd
drwxr-xr-x root/root         0 2017-01-23 10:14 ./lib/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./lib/systemd/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./lib/systemd/system/
-rw-r--r-- root/root       437 2016-12-10 06:18 ./lib/systemd/system/groonga-httpd.service
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/sbin/
-rwxr-xr-x root/root    803160 2017-01-23 10:14 ./usr/sbin/groonga-httpd
-rwxr-xr-x root/root      2555 2017-01-23 10:14 ./usr/sbin/groonga-httpd-restart
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/groonga-httpd/
-rw-r--r-- root/root      3489 2017-01-23 10:14 ./usr/share/doc/groonga-httpd/changelog.Debian.gz
-rw-r--r-- root/root     14825 2017-01-19 08:11 ./usr/share/doc/groonga-httpd/copyright
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/lintian/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       130 2016-12-10 06:18 ./usr/share/lintian/overrides/groonga-httpd
drwxr-xr-x root/root         0 2017-01-23 10:14 ./var/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./var/log/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./var/log/groonga/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./var/log/groonga/httpd/


groonga-plugin-suggest-dbgsym_6.1.5-1_armhf.deb
-----------------------------------------------

 new debian package, version 2.0.
 size 123152 bytes: control archive=635 bytes.
     531 bytes,    13 lines      control              
     424 bytes,     4 lines      md5sums              
 Package: groonga-plugin-suggest-dbgsym
 Source: groonga
 Version: 6.1.5-1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 159
 Depends: groonga-plugin-suggest (= 6.1.5-1)
 Section: debug
 Priority: extra
 Homepage: http://groonga.org/
 Description: Debug symbols for groonga-plugin-suggest
 Auto-Built-Package: debug-symbols
 Build-Ids: 1b659faabb20382a0a1a92047444bfea6e11bcf7 c58315e67a90a1f1cffe189000be7514297b95fa dba931a1ae099a93e9e962ea856335a4b5fd8ead fe0205ee0f49d1181e4ae0f3eec1072c8d1c40da

drwxr-xr-x root/root         0 2017-01-23 10:14 ./
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/1b/
-rw-r--r-- root/root     16176 2017-01-23 10:14 ./usr/lib/debug/.build-id/1b/659faabb20382a0a1a92047444bfea6e11bcf7.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/c5/
-rw-r--r-- root/root     43864 2017-01-23 10:14 ./usr/lib/debug/.build-id/c5/8315e67a90a1f1cffe189000be7514297b95fa.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/db/
-rw-r--r-- root/root     34784 2017-01-23 10:14 ./usr/lib/debug/.build-id/db/a931a1ae099a93e9e962ea856335a4b5fd8ead.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/fe/
-rw-r--r-- root/root     54260 2017-01-23 10:14 ./usr/lib/debug/.build-id/fe/0205ee0f49d1181e4ae0f3eec1072c8d1c40da.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/
lrwxrwxrwx root/root         0 2017-01-23 10:14 ./usr/share/doc/groonga-plugin-suggest-dbgsym -> groonga-plugin-suggest


groonga-plugin-suggest_6.1.5-1_armhf.deb
----------------------------------------

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

drwxr-xr-x root/root         0 2017-01-23 10:14 ./
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/bin/
-rwxr-xr-x root/root     13812 2017-01-23 10:14 ./usr/bin/groonga-suggest-create-dataset
-rwxr-xr-x root/root     22216 2017-01-23 10:14 ./usr/bin/groonga-suggest-httpd
-rwxr-xr-x root/root     38512 2017-01-23 10:14 ./usr/bin/groonga-suggest-learner
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest/
-rw-r--r-- root/root     30048 2017-01-23 10:14 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest/suggest.so
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/groonga-plugin-suggest/
-rw-r--r-- root/root      3489 2017-01-23 10:14 ./usr/share/doc/groonga-plugin-suggest/changelog.Debian.gz
-rw-r--r-- root/root     14825 2017-01-19 08:11 ./usr/share/doc/groonga-plugin-suggest/copyright
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/lintian/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       242 2016-12-10 06:18 ./usr/share/lintian/overrides/groonga-plugin-suggest


groonga-token-filter-stem-dbgsym_6.1.5-1_armhf.deb
--------------------------------------------------

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

drwxr-xr-x root/root         0 2017-01-23 10:14 ./
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/c1/
-rw-r--r-- root/root     12604 2017-01-23 10:14 ./usr/lib/debug/.build-id/c1/1298c91ef01552f89c0fdacdce7c9c033a158b.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/
lrwxrwxrwx root/root         0 2017-01-23 10:14 ./usr/share/doc/groonga-token-filter-stem-dbgsym -> groonga-token-filter-stem


groonga-token-filter-stem_6.1.5-1_armhf.deb
-------------------------------------------

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

drwxr-xr-x root/root         0 2017-01-23 10:14 ./
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/
-rw-r--r-- root/root      9516 2017-01-23 10:14 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stem.so
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/groonga-token-filter-stem/
-rw-r--r-- root/root      3489 2017-01-23 10:14 ./usr/share/doc/groonga-token-filter-stem/changelog.Debian.gz
-rw-r--r-- root/root     14825 2017-01-19 08:11 ./usr/share/doc/groonga-token-filter-stem/copyright


groonga-tokenizer-mecab-dbgsym_6.1.5-1_armhf.deb
------------------------------------------------

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

drwxr-xr-x root/root         0 2017-01-23 10:14 ./
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/5a/
-rw-r--r-- root/root     17360 2017-01-23 10:14 ./usr/lib/debug/.build-id/5a/28ccf9fda08468e21c5d6a60ce6d9698d00768.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/
lrwxrwxrwx root/root         0 2017-01-23 10:14 ./usr/share/doc/groonga-tokenizer-mecab-dbgsym -> groonga-tokenizer-mecab


groonga-tokenizer-mecab_6.1.5-1_armhf.deb
-----------------------------------------

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

drwxr-xr-x root/root         0 2017-01-23 10:14 ./
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers/
-rw-r--r-- root/root     13620 2017-01-23 10:14 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers/mecab.so
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/groonga-tokenizer-mecab/
-rw-r--r-- root/root      3489 2017-01-23 10:14 ./usr/share/doc/groonga-tokenizer-mecab/changelog.Debian.gz
-rw-r--r-- root/root     14825 2017-01-19 08:11 ./usr/share/doc/groonga-tokenizer-mecab/copyright
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/lintian/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       359 2016-12-10 06:18 ./usr/share/lintian/overrides/groonga-tokenizer-mecab


groonga_6.1.5-1_armhf.deb
-------------------------

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

drwxr-xr-x root/root         0 2017-01-23 10:14 ./
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/groonga/
-rw-r--r-- root/root      3489 2017-01-23 10:14 ./usr/share/doc/groonga/changelog.Debian.gz
-rw-r--r-- root/root     14825 2017-01-19 08:11 ./usr/share/doc/groonga/copyright


libgroonga-dev_6.1.5-1_armhf.deb
--------------------------------

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

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


libgroonga0-dbgsym_6.1.5-1_armhf.deb
------------------------------------

 new debian package, version 2.0.
 size 3773988 bytes: control archive=803 bytes.
     639 bytes,    14 lines      control              
     742 bytes,     7 lines      md5sums              
 Package: libgroonga0-dbgsym
 Source: groonga
 Version: 6.1.5-1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 4362
 Depends: libgroonga0 (= 6.1.5-1)
 Section: debug
 Priority: extra
 Multi-Arch: same
 Homepage: http://groonga.org/
 Description: Debug symbols for libgroonga0
 Auto-Built-Package: debug-symbols
 Build-Ids: 0abdeda65f4dff07ec341151e7563bce2bf86e99 19354b3f93a7732fa6765dd5dff33f2f80f9f681 2c15371a56455cb3859e21b9cb7ad7fcf9bce884 2dec53e98a9f55211eac7e7d7ec239126268d25a 30aeaa2c2dcdca682550c1ae99868acbb8d49de1 a1e3669fcf36e19b463c07130993afbd1deaf573 a75cd6eae2a43daacee62a459f778fbcb34dadf1

drwxr-xr-x root/root         0 2017-01-23 10:14 ./
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/0a/
-rw-r--r-- root/root     11084 2017-01-23 10:14 ./usr/lib/debug/.build-id/0a/bdeda65f4dff07ec341151e7563bce2bf86e99.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/19/
-rw-r--r-- root/root   4378964 2017-01-23 10:14 ./usr/lib/debug/.build-id/19/354b3f93a7732fa6765dd5dff33f2f80f9f681.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/2c/
-rw-r--r-- root/root     10904 2017-01-23 10:14 ./usr/lib/debug/.build-id/2c/15371a56455cb3859e21b9cb7ad7fcf9bce884.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/2d/
-rw-r--r-- root/root     12424 2017-01-23 10:14 ./usr/lib/debug/.build-id/2d/ec53e98a9f55211eac7e7d7ec239126268d25a.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/30/
-rw-r--r-- root/root     11244 2017-01-23 10:14 ./usr/lib/debug/.build-id/30/aeaa2c2dcdca682550c1ae99868acbb8d49de1.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/a1/
-rw-r--r-- root/root     10920 2017-01-23 10:14 ./usr/lib/debug/.build-id/a1/e3669fcf36e19b463c07130993afbd1deaf573.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/lib/debug/.build-id/a7/
-rw-r--r-- root/root     11684 2017-01-23 10:14 ./usr/lib/debug/.build-id/a7/5cd6eae2a43daacee62a459f778fbcb34dadf1.debug
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/
drwxr-xr-x root/root         0 2017-01-23 10:14 ./usr/share/doc/
lrwxrwxrwx root/root         0 2017-01-23 10:14 ./usr/share/doc/libgroonga0-dbgsym -> libgroonga0


libgroonga0_6.1.5-1_armhf.deb
-----------------------------

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

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


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


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

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

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

Build Architecture: armhf
Build-Space: 241092
Build-Time: 2139
Distribution: stretch-staging
Host Architecture: armhf
Install-Time: 277
Job: groonga_6.1.5-1
Machine Architecture: armhf
Package: groonga
Package-Time: 2476
Source-Version: 6.1.5-1
Space: 241092
Status: successful
Version: 6.1.5-1
--------------------------------------------------------------------------------
Finished at 2017-02-03T22:13:58Z
Build needed 00:41:16, 241092k disc space